Michael Eriksson's Blog

A Swede in Germany

Posts Tagged ‘usability

WordPress and its user-hostile administration area

leave a comment »

And don’t you believe it: The morons from WordPress still managed to introduce links where they do not belong, despite use of quotation marks.


Written by michaeleriksson

April 8, 2019 at 11:08 am

WordPress and its user-hostile administration area

with one comment

As I tried to refresh a page from my WordPress account earlier today, I found that I had been logged out.* More specifically, I was forcefully lead to (what I assume was) a log-in page that simply did not work or show anything useful, but which complained about a lack of JavaScript. (No, activating JavaScript did not help.) After digging around, I found a log-in page that did work, logged in—and found myself in some version of the administration area that did not even slightly resemble what I was used to, and which simply did not work—with or without JavaScript activated. Problems included incomplete displays, “my sites” simply not being found, and (browser-side) warnings about a possible XSS** attack by a “doubleclick.net” address***.

*Having a dedicated user-account and browser for WordPress, I have no qualms about never logging out manually. Automatic log-outs, on the other hand, are so rare that I cannot even recall the previous time that it happened (or whether I had similar problems back then).

**Cross-site scripting: Roughly speaking, an attempt to cause mischief for a user by including JavaScript from one site into another, in order to circumvent the user’s and browser’s security controls/checks/awareness/whatnot.

***Presumably, a part of Google’s advertising efforts that still carries the name of the former “DoubleClick” brand. The alarm is likely a false positive to the degree that this is almost certainly is not caused by an illegal activity; however, (a) users are still better off without it, e.g. for privacy reasons, (b) the integration into the WordPress pages is obviously not done sufficiently well.

After wasting five to ten minutes trying this-and-that, I contemplated simply foregoing WordPress entirely and effective immediately*, but resorted to a last ditch attempt: One of my old tabs contained a page from the (familiar) admin area. I copy-and-past-ed** it into a new tab, and things suddenly worked as they should.

*WordPress sucks, and I have long-standing plans to move away anyway. However, time constraints and the many other things that I do has postponed this ever again.

**Just re-loading would likely have worked equally well, but keeping the old tab intact gave me a better chance at a second attempt, should something go wrong.

The difference is likely that this link already led to the blog specific admin area, which still works as it should; while what was served after log-in was a user account admin area.* Should the above happen to you (or me, at a future time): Look at the URL. If it begins with “https://wordpress.com/me”, you are probably stuck in the user level area, and you should try to get to the blog area, which will begin with “https://michaeleriksson.wordpress.com/”**. The “dashboard” of the blog administration can then be found under “https://michaeleriksson.wordpress.com/wp-admin/index.php”**, from where other parts of the administration can be found. (In all cases, with reservations for future changes.)

*There can be more than one blog associated with each user account.

**For my main WordPress blog. Please substitute your own blog name/address as appropriate. Also see excursion below.

Excursion on WordPress, incompetent handling of post-by-email, and how this can influence a text:
I have written repeatedly of how WordPress handles post-by-email incompetently, e.g. through introduction of artificial links. This text provides a good example: without the quotation marks around “doubleclick.net” above, it might have been mangled into “http://doubleclick.net” and turned into a link, which is not only contrary to the purpose of use above, but could also be highly confusing to the reader. Knowing of this issue, I resorted to add quotation marks where I would not normally have used them.

The use of e.g. “https://michaeleriksson.wordpress.com/” above is yet another example of why WordPress handles links poorly: I do not intend to link—only to make a statement of how a link would begin. Indeed, going directly to this address would show the published blog—not the administration area. (But here, I would have used quotation marks anyway, because I discuss strings.) Further, “https://michaeleriksson.wordpress.com” would normally have called for a use of place-holders, e.g. in that I had replaced “michaeleriksson” with “[your blog]”. I refrained from doing so, because I see at least a risk* of mangling.

*I have made good experiences with quoting, which seems to protect the text, but if I find an exception I would need to research a work-around, edit, and/or re-publish the text, which would cost me time and energy. To boot, this would involve a delay and inconsistent texts being sent to subscribers. Better then to take the safe road.

Written by michaeleriksson

April 8, 2019 at 11:04 am

Follow-up: The misadventures of a prospective traveler

leave a comment »

Recently, I had great problems booking an airplane ticket to Sweden, ultimately resorting to using a travel agency, which required both an unnecessary fee and a trip on foot.

For my return to Germany, my seasoned-traveler father booked the ticket from his computer.* While this worked in one go, the service that he ended up using (“supersavertravel”) was abysmal: The entire interface seemed geared at one thing and thing only—to coerce the user into buying expensive additional services that he did not need. This to the point that it was necessary to explicitly decline these many services and to do so individually—no, I do not want a hotel; no, I do not want extra insurance; no I do not want a rental car; no, …; no, …; no, …; no, …; no, …; no, …; no, …; no, …; no, …; … I even seem to recall (but could be wrong) that there was an additional query after submit along the lines of “You have not chosen this-or-that. Are you really sure that this is deliberate?”… Utterly inexcusable was the checkbox to decline spam: Where more main-stream businesses use a checked checkbox to imply “I consent to be spammed”, here the user needed to check the checkbox to decline spam…** The confirmation email, unsurprisingly, contained much more advertising and attempts to bring unneeded services to my attention than it did confirmation…***

*I had left my own computer in Germany in order to travel lightly; and only bought a one-way ticket to Sweden, because I did not know how long I needed to stay.

**Implying that the main idea almost certainly was to trick users into making the wrong choice.

***This in stark contrast to EuroWings below, where the confirmation email was informative, to the point, and did not even abuse HTML for the email text. (Portions of [1] contain some discussion of why HTML has no place in emails.)

A second trip turned out to be needed.* I tried EuroWings again, and this time everything actually worked.** However:

*My mother’s old house is being sold, and the time needed to sort through my own old books and whatnot turned out to be much longer than I originally thought.

**Contrast this with the original text. This time, I made sure to pay by credit card (3D-secure was not needed) instead of invoice. I do not know whether the old issue was a temporary server-side problem, a problem with a workflow somewhere, or whether there is some problem relating to invoices that I now ducked. (Regarding workflow: In my experience, most QA checks tend to run through fairly straight-forward scenarios, meaning that a scenario that involves the user e.g. going back to a previous step, responding to a validation error, actually reading the T-&-C’s, whatnot, is often left untested. These scenarios, however, are disproportionately likely to cause errors—especially when Ajax and other “state sensitive” technologies are used.)

  1. EuroWings too tried to advertise additional services, if far fewer, in a manner that detracted considerably from usability and prolonged the process unnecessarily. Unlike with “supersavertravel”, they were all opt-in, but it would be so much better if they were all collectively moved to a separate and skippable step, especially since they will only ever be interesting for a small minority of the customers. (Be it because they have no need, already have made other arrangements, would lose points with some program by booking/buying somewhere else, …)

    Hotels are a potentially odd area. In the specific context of a flight, admittedly, I can see many cases where it would be helpful to “co-book” a hotel. However, hotels are offered more-or-less everywhere, including for e.g. train-travel. In most of these cases, booking a hotel together with the means of travel turns the reasonable workflow on its head: It is usually the hotel, not the means of travel, that is the bottle-neck, and a reasonable workflow would then involve finding and booking a hotel first and finding means of travel second.

  2. Integrating a please-do-not-spam-me checkbox in the main pages would be trivial. Nevertheless, declining spam is only possible through visiting a separate page. On this page, moreover, the email address has to be added redundantly and manually, and it could be (depending on internals and the exact steps used by the customer) that the spam rejection only takes effect after the fact, e.g. in that the one click somewhere activates an unethical implicit consent to spam, while the other page only revokes this consent. This would leave a window of abuse open.

    Frankly, this is so common that legal measures are necessary: It must by law be forbidden both to use implicit consents and to require explicit rejections for any use of personal data (in general, but the more so for email data) that is not central to the process for which the data was provided. This, notably, from the customers perspective—not the data collector’s. (For instance, the data collector might see sending a news letter with advertising as a central part and having to send a confirmation email as an annoying negative, but for the customer it is the other way around.)

  3. There are potentially redundant entries for email, including one for the actual transaction and one for please-notify-me-in-case-of-delays. It would be better to keep them as one per default (if in doubt by automatically filling the one with the other and allowing a manual change). Further, the entries are likely made in the wrong order for most users, with a non-mandatory entry of please-notify-me-in-case-of-delays on one page and the mandatory actual transaction address on a later page. Further, the former came with a pop-up upon submit that urged me to fill in this non-mandatory field anyway—which seems more like fishing for email addresses than an attempt to provide a service.

    Why had I left the email address out? Well, I knew from my earlier attempts* that if I did provide an email address for notifications, then I would also be forced to provide a cell-phone** number—absolutely idiotic.

    *The attempts in general are described in the original text, but details like the above were left out.

    **Note that I currently do not even have a cell-phone. Also note that cell-phones too can be abused for spam (through SMS).

Written by michaeleriksson

February 25, 2019 at 1:08 am

The misadventures of a prospective traveler

with 2 comments

Three issues that have collaborated to drive me nuts today:

  1. I had promised my father and step-father to try to come to Sweden over Christmas or New Year’s.

    For this purpose, I had already made several attempts to find suitable tickets with the Tor Browser (relayed through Tor or directly over my non-torified Internet connection, even with JavaScript enabled). This had proved very annoying and unproductive. For instance: The Lufthansa site simply does not load at all, it just hangs with a perpetually waiting tab. The SAS site loads, appears to work, allows me to fill in all criteria—and then does nothing when I try to submit the search. Ditto EuroWings. A meta-search that I attempted to use was hopelessly slow, insisted on (with every single search) re-including flights with a change of planes,* and also insisted on re-ex(!)cluding potentially cheaper late-night** flights. At least one site interrupted my search by having a JavaScript pop-up demand that I take a survey to improve its usability…*** Almost invariably, these sites had various annoying blend-ins/-outs, animations, overly large images, poorly structured pages, …

    *Which roughly doubles the travel time between Düsseldorf and Stockholm (that have the most suitable airports) and is highly unwanted by me.

    **A smaller negative than changing flights…

    ***First tip: Do not molest customers with such pop-ups!

    Having given up and postponed the search twice already, and now having the 28th of December, I decided to install a brand-new vanilla Firefox, in the hope that at least the SAS/EuroWings problems would be explained by some version incompatibility with either the Tor Browser (as a Firefox derivative) or my version being too low.*

    *Many web-sites, in the year 2018!, still fail to make browser-agnostic implementations, insist on very recent versions of browsers, and similar—usually with no indication to the user that they do. (And visiting an eCommerce web-site without JavaScript on is more-or-less bound to fail.)

    First attempt, SAS: Everything seemed to work, but the web-site was now even more visually annoying than before. The choosing of dates, for some reason, worked in a different manner than before and was highly counter-intuitive. Seeing that there also (not entirely unsurprisingly) were no good flights prior to the New Year and that prices were unnecessarily high, I decided to look elsewhere first.

    Second attempt, Lufthansa: Still did not load…

    Third attempt, EuroWings: To my great and positive surprise, everything appeared to work perfectly, showing me timely and much-cheaper-than-SAS flights. Things kept working as I began my purchase, entering name, address, and whatnot—and I even found the alternative to pay by invoice!* Alas: As I tried to confirm the last step, I was met with an uninformative error message and the request to start again from the very beginning. There was, in particular, no mention of factors like the last few seats on that flight having been suddenly snatched by someone else, or invoice payment not being possible on so short notice**. Before starting over from the beginning, I gave just the last page a second try. I re-entered some (inexplicably deleted) information and re-submitted. Same error message—but now followed by an intrusive pop-up suggesting that I start a chat with someone… I clicked the dismiss button—but, instead of disappearing, the pop-up did a weird and time-consuming animation and kept blocking a significant part of the page even after the animation was finished. At this point, I had had enough, closed my browser, and decided to find other means—which will likely amount to going to a physical travel agency and visiting at some point after the New Year…

    *Thereby removing one of my last doubts, namely the risk that I would be forced to pay with a combination of credit card and 3D-secure—which I (a) have never attempted with my new bank, (b) fear would involve the idiotic use of SMS (I do not currently have a cell provider), (c) had found to simply not work at all with my previous bank (the to-be-avoided Norisbank).

    **For which I would have had some sympathies–but, in that case, invoice payment should never have been offered in the first place.

    These events are the more annoying, seeing that there actually was a time when it was reasonably easy to handle tasks like these over the Internet—it really is not that hard to implement a decent search–choose–pay UI. However, year for year, the usability of various Internet shops and whatnots grows worse and worse, and appears to make more and more specific demands on the browsers. Much of this goes back to the obsession with Ajax. Credit-card payments are also not what they used to be, being much more laborious and likely to fail than in the days before 3D-secure and similar technologies. Worse, from the customers point of view, they likely lead to a net loss of security, whereas the stores and involved payment entities see the gains.* Then, if not relevant above, we have the inexcusably poor efforts of various delivery services, notably DHL, which often make it less of a fuzz to go to a store and pick up a purchase in person…

    *For the customer, the risk that someone will manage to fake a payment is reduced, but if someone does, he has very few options to prove that he was the victim of fraud. Without 3D-secure, the burden of proof was on the other party, and the customer had very little risk at all (short of additional work). The merchants and credit-card acquirers, on the other hand, can have large costs and losses when a fraudulent purchase is followed by a charge-back—and 3D-secure helps them, not the customer, by reducing this risk.

  2. Installing and setting up Firefox proved to be a PITA. Apart from the issues of the next item, I note that any version of Firefox has tended to come with very poor default settings, including default UI behavior; and that the “new” Firefox is highly reduced compared to the “old”.* After installation and prior to my attempts at finding tickets, I spent at least five minutes going through and correcting settings—that were then, obviously, only even valid for that one user account**…

    *The changes would be enough for a long own text. For now, I will just note that (a) that the GUI-configurable settings have been reduced to a fraction of their previous scope, (b) the general attitude described in e.g. [1] is continued.

    **I have a number of user accounts for different purposes, in order to reduce the risk of and damage from security breaches and whatnots. This includes separate accounts for eCommerce (the current), my professional activities, ordinary surfing, porn surfing, and WordPress.

    To boot, a new dependency was installed: libstartup-notification0. I did some brief searching as to what this is, and it appears to be just a way for an application to change the shape of the cursor during startup… (Beware that my information might be complete.) Firstly, why would I want the cursor to change?!? Secondly, even if this was seen as beneficial, it certainly is not reason enough to add yet another dependency—there already are too many useless dependencies, many of them recursive (also see portions of a text linked below).

  3. The idiotic Debian “alternatives” systems and the “desktop nonsense”.

    Disclaimer: Some familiarity with Debian or similar systems might be needed in order to understand the below.

    When a Debian user installs an application, e.g. Firefox, /usr/bin/firefox (or whatever applies) does not contain the Firefox binary—nor even a link to the Firefox binary. Instead, it links to an entry in /etc/applications, which in turn links to the actual binary (unless a certain setup has even more indirections involved). To boot, this system is administered by a poorly thought-through tool (update-alternatives) and/or configuration; to boot, it is vulnerable to applications arbitrarily overriding the status quo, as well as adding pseudo-applications (e.g. x-www-browser) that at least I simply do not want polluting my system.

    In fact, these pseudo-applications are likely the reason why this system was added in the first place—because e.g. x-www-browser can be “provided” by a thousand-and-one different real applications, it would be highly complicated to work with straight links, let alone binaries (especially when one of the “providers” is removed). For real applications, there is a much better way to solve such problems—namely, to just link e.g. /usr/bin/firefox directly to the usually sole instance of Firefox present and give the user an explicit choice of the “default” Firefox every time a new Firefox version was installed or an old removed.

    Why do I not want these pseudo-applications? Firstly, they bring me and most reasonable users, at best, a very minor benefit (for which they bring the cost of the indirections and the greater effort needed when looking for something). Secondly, the “providers” are usually sufficiently different that unexpected effects can occur.* Thirdly, they are often used by other applications in a manner that is highly unwanted: For instance, one of the alleged main benefits of x-www-browser is that any other application, e.g. an email reader, should have an easy way to open an HTML document, without having to bother to check what browsers are installed—but I absolutely, positively, and categorically do not want my email reader to even try this. In a saner world, this would be something configurable in the email reader (and only there), and those who want this endangerment can configure it, while those who do not want it simply do not configure it. By having x-www-browser, the user no longer has such control. Worse: Since the real application behind x-www-browser can change without his doing (be it due to presumptuous applications or an administrator with different preferences), the effects can be very, very different from the expected—e.g. that a known browser with JavaScript, images, and Internet access disabled (appropriate for reading e.g. HTML emails) is replaced with an unknown browser with everything enabled. (Which, in combination with email, could lead to e.g. a security intrusion, leaking of data to a hostile party, activation of unethical tracking mechanisms of who-read-an-email-when, and similar.)

    *For instance, there are many highly specific tool families, e.g. awk, whose members will superficially appear to be and behave identically (much unlike e.g. Firefox and Chrome/Chromium, as x-www-browser candidates), but will have subtle differences that can lead to a failed execution or a different-than-expected result in certain circumstances. Such problems, especially when undetected, can have very serious consequences. It is then much better for the user to, depending on circumstances, pick the specific awk-version he needs by explicit call (=> the alternatives system is not needed), make sure (for a one-user system) that he only ever has one instance installed and use the generic “awk”-name (=> the alternatives system is not needed), or restrict himself to only the common base of identical features. In the last case, the alternatives system would have some justification—however, it would place a very high burden on the user in terms of not making mistakes, might still fail due to undocumented differences or bugs, and is vulnerable to other differences, e.g. regarding performance. Obviously, this would also reduce the available capabilities of the tool in question—in many cases, quite severely.

    Similar remarks concern the “desktop nonsense” (which would deserve a long text of its own; a partial treatment is present). In this particular case, there are at least two* further mechanisms (/usr/share/applications, /usr/lib/mime/packages/) that cause similar problems, including allowing e.g. email readers to launch things that they should not launch. I have used the tool chattr to forbid additions to these two directories; however, due to the incompetence of the apt implementers and/or package builders, this is only a partial help: Despite these entries being unimportant for the actual functioning of the system/the installed application, the chattr-setting leads to a hard error from the apt-tools. I know have to “de-chattr” the directories, re-attempt the install, manually delete the added files, and “re-chattr” the directories … Effectively, I do not prevent the directories from being polluted—instead I trade an increased work-load for the benefit of knowing when I have to manually clean them up after pollution.

    *Proof-reading, I suspect that /usr/lib/mime/packages is not strictly desktop related, and might better have been treated as a third area. In the big picture, this does not matter. (And I do not have the energy to sort out “what is what” at the moment.)

Written by michaeleriksson

December 28, 2018 at 6:43 pm

Poor user interfaces / gkrellm and battery notifications

leave a comment »

Even the world of software development, even in the Linux and “open source” areas, often shows such signs of incompetence that it boggles the mind. This in particular where usability and workflows are concerned.

Take what I just observed: I tried to activate the low-battery notifications in the monitoring tool gkrellm.* These are activated through a checkbox on one config page, with the actual configuration (what to do when) on another, in a pop-up—it self disputable, considering that there were ample space to put both parts on the same page. I opened the other page, filled in appropriate values, closed the pop-up, and checked the check box to activate the settings. What happens? I am alerted that the settings have changed and that I must now open the pop-up to enter information (I do not recall the exact formulation). As I re-open the pop-up, I see that the settings just manually entered have been arbitrarily restored to empty default values!!!

*I run my notebook attached to an electric socket almost without exception and normally have no need for notifications. However, recently, some type of glitch in the connection at the notebook-side has led to a temporary interruption on several occasions—and today I awoke to find that my notebook had ran its battery down and shut off during the night.

Not only is this an extremely user-hostile restriction on the workflow, it is also not communicated in advance, the reset of the values borders on the inexcusable per se,* and (with some reservations for the detail implementation) this could prevent one of the most obvious uses of the settings—to keep a constant set of detail settings that are activated or deactivated as the situation fits.**

*With few exceptions, values explicitly set by a user should never be changed automatically or as an unexpected side-effect of a manual action. A similar example is the cookie settings in Firefox: If someone allows cookies per the main option, chooses the sub-option to disallow third-party cookies (as he should!), and later deactivates cookies per the main option, then a later reactivation of cookies will also change the sub-option to allow third-party cookies, which is counter-intuitive, against the stated will of the user, and to boot a poor default setting. (Disclaimer: I have not verified that this mis-behavior is still present in recently re-vamped Firefox.)

**E.g. in that someone using a notebook on a daily commute might have them off (as an unnecessary disturbance, because he knows that he will arrive before the battery runs down), but have them on when otherwise working without external power.

Generally, gkrellm has a very odd and unexpected user interface, be it in the main product, the various plug-ins individually, or the various plug-ins compared to another. (The F1-key opens the configuration, not the help. Sometimes a mere click on a plug-in activates or deactivates a feature; sometimes it does not. Extra information is sometimes displayed when clicking minuscule squares with no functional identification. The configuration is usually poorly though-through. Etc.)

Written by michaeleriksson

November 10, 2018 at 4:08 pm

Tax declaration for 2017/More on Elster etc.

leave a comment »

My second go at the tax declaration was more successful than the first. A few, likely incomplete, remarks, however:

  1. As far as I can tell (without making a detailed check) all the old problems remain (cf. e.g. [1], [2]). This includes the inability to edit multiple forms in parallel and the arbitrary number-format issues, both of which were big annoyances. The latter includes complications like that copying “11,30” into the one field leads to an error message that decimal positions are forbidden, while copying “34” into another brings the error message that two decimal positions are mandatory (even though an exact number was intended—not a rounded “34,25”). Never mind that all other tools I use follow the convention of a decimal point while Elster strictly uses the German convention of a decimal comma
  2. The handling of VAT (not Elster specific) is an unnecessary cause of complications and not very logical: Despite* VAT merely being collected by businesses on behalf of the IRS**, it counts as income when collected and as cost when either paid out the IRS or paid to other business (based on their bills). This introduces several pointless fields and the need to copy*** data from the one form to the other, where the net result should be 0.**** Really, this should not be income and cost—but positive and negative cash flow: There is no* change, even temporary, in terms of overall net assets and the “accounting balance” —only temporary fluctuations in the bank balance.

    *Looking at practical intent and logic: The formal system might be different, which would explain the illogical procedure.

    **I refer to the German Finanzämter and the general system by “IRS” for convenience and understandability. The correspondence to the U.S. entity is not perfect, however.

    ***It remains the case that data input or calculated in one form cannot be automatically synchronized with other forms referencing the same values, introducing manual steps and potential errors. This is especially absurd, seeing that these values do not really benefit the other forms—a good system would require the IRS to input the values (preferably automatically) based on the forms.

    ****At least once the yearly VAT declaration has lead to a correcting payment over the monthly pre-declarations and pre-payments.

  3. My VAT calculations were partially foiled by some older submitted forms no longer being readable—for no discernible reason.
  4. Various copy actions were made the harder through Elster somehow (likely not deliberately) disallowing the copying of calculated values from the forms. Whereas it is normally not a problem to copy any piece of text from an HTML page, this was simply not possible here. (I did not investigate in detail why this was so, but a brief look at the HTML code makes me suspect that the values were somehow displayed through CSS instead of normal text.)
  5. I tried to save* the EÜR-form with dummy values of “TODO” for some fields where I did not have the values at hand,** wanting to complete the rest and come back to these fields later. This with the particular point that I had now identified all the fields that I needed, allowing me to target these specific fields later—without having to go through the entire document again, costing me additional effort and introducing the risk of missing a field the second time around. Alas, not only were these fields marked as containing errors, but it was impossible to save the form without correcting these errors. (Note: Not send the form, which would have been OK—merely save the form.) Imagine if a code editor refused to save code that did not compile, a text editor text with spelling errors, or a spread-sheet fields with invalid formulae.

    *Thinking back, I am a little uncertain whether I tried to save, just move to the next page of the form, or both. Whichever applies does not alter the idiocy, however.

    **Including some of the aforementioned VAT fields.

    As a workaround, I filled these fields with absurdly large values that would have caused correspondingly absurd totals to appear, (a) giving me a chance to see what fields were picked, (b) making it obvious if a field had been missed. Still, this is suboptimal and introduces a further moment of risk.

    Needless to say, the nifty feature of being able to mark (e.g. through a check-box) what fields are relevant-but-still-incomplete is not present.

  6. Many of the forms could be made a lot easier by adding a few central switches that suppress irrelevant parts (“married yes/no” e.g.—someone not married has no possible use for half the “Mantelbogen”; with some reservations for when circumstances change during the year).
  7. The form to send a free-text message to the IRS is particularly idiotic (also see previous discussions for other problems): A reasonable form would have one page, with three fields, viz. identification number, subject, and body. The actual form has several pages, including requests for information like address, company address, data about a spouse, …
  8. Some of the problems (including the previous item?) could be explainable by a conceptual flaw: Instead of Elster being connected directly to the IRS (just like my online banking is connected directly to my bank), it is a “service” provided by another governmental organization that merely sends the data to the IRS in a manner similar to offline tools by third-parties. Without this conceptual flaw, a number of simplifications, e.g. with regard to data input and changes of address, would be possible.
  9. Elster is excruciatingly slow. For instance, to close the one form, open another, copy a value, close the second form, open the first form, and paste the value, takes ages. (And remember that it is not possible to have two forms open in parallel.) Even switching from the one page of the same form to the next, an operation that should be almost immediate, causes a very noticeable delay. (I never timed these operations, but on some occasions it might have been as much as ten seconds.) All in all, I spent several times longer waiting for Elster than I did actually interacting with it.
  10. The German tax system makes a great use of “Freibeträge”, amounts that the tax payer can deduct without e.g. providing receipts. In some cases, e.g. for relocation costs, this can be an advantage when the overall costs are small enough. In others, it is more or less fraud. Notably, there is a blanket amount that any employee can deduct for “Werbungskosten”*, which is painted as a great service towards the people—as if this was a tax break. In reality, it is nothing but an invalidation of all deductions smaller than this blanket amount: The overall amount of money needed by the government is not magically reduced, implying that the same money is collected through a higher overall tax rate. The blanket amount then merely means that “if you have Werbungskosten below this amount, you cannot deduct any Werbungskosten”, very similar to the deductible of an insurance policy. A further complication is that many with somewhat higher actual costs will not bother to state these costs—finding all** the receipts and making all the checks needed to claim, say, an additional 50 Euro will be more effort than is worth the trouble. To boot, this system is unfair in as far as even those with considerably lower Werbungskosten can use the full amount, causing a flow of money from*** those with higher Werbungskosten to those with lower…

    *I am uncertain what a good English translation could be. The general meaning is costs related to work and that only arose through work. Examples include e.g. special clothing (mostly blue collar) and professional literature (mostly white collar).

    **Note that it is not enough to find the receipts for those 50 Euro—the entire amount, blanket + 50 Euro, needs to be covered.

    ***Measured against the baseline of a sound deduction system. Compared to a system where Werbungskosten are not deductible at all, however, the flow still benefits the people with higher Werbungskosten.

    The true reason for this blanket amount is likely that the IRS wants to avoid additional work on its own end, notably checks of receipts* and the like.

    *However, the last few years, receipts have grown less important and are no longer collected by the IRS by default. Obviously, the tax payers still need to keep the receipts in case of e.g. an audit.

Written by michaeleriksson

November 2, 2018 at 8:27 pm

Posted in Uncategorized

Tagged with , , , ,

Follow-up: My recent problems with Unitymedia

leave a comment »

The situation around Unitymedia (cf. [1], [2]) remains extremely frustrating:

  1. My support inquiry is still unanswered, despite a reminder.
  2. I still cannot use the main Internet connection of my apartment.
  3. While I am able to use the hotspot functionality as a workaround, it is (not unexpectedly) considerably slower than my real connection used to be. To boot, there are continual, highly annoying interruptions, leading to e.g. SSH sessions dying and needing a restart, and “ping”* does not work at all. Not to forget: This type of access is inherently more dangerous than the regular use, because it is easier for a hostile entity to listen in on and/or manipulate the communication.

    *Neither does e.g. “traceroute”, and I suspect that the entire ICMP is blocked, which would border on the negligent, seeing that this protocol has an import role in ensuring correctness and efficiency of Internet communications. (Blocking just specifically ping is dubious, but might be somewhat excusable due to its occasional abuse for denial-of-service attacks. For me, however, the lack of ping is a major nuisance, since I need to keep an eye on a few servers, and ping is the best way to do this; especially when reachability problems can be either a server-side problem or a connection problem, as is currently the case.)

  4. The miserable web interface of the router* works better in the newly installed Chromium than it did in Firefox; however, the situation is not satisfactory: Approximately every second attempt to run the built-in trouble-shooting results in a long wait and then an unspecified failure; every second results in a long wait and the claim that everything would now be OK—while de facto everything remains just as broken as before.

    *I note that the router is provided by and is the property of Unitymedia, with the implication that problems, malfunctions, whatnot, are Unitymedia’s responsibility—not e.g. those of an independent retailer.

Written by michaeleriksson

April 1, 2018 at 7:24 pm