Many popular iPhone apps are recording user sessions without asking - <AUTHOR> https://techcrunch.com/2019/02/06/iphone-session-replay-screenshots/ <comment><USER2> A lot of people here are commenting that its no big deal that organizations are recording every screen, tap and swipe for their own apps. There are two problems with that:

1\. As the article mentions, in some cases these apps end up leaking sensitive data like credit card detail and passwords. Generally, if you are taking snapshots of the user's screen instead of sending text metrics, it becomes much harder to mask sensitive data at all times.

2\. The bigger issue is that these services generally use third parties to record this, and their privacy policy is a big problem. For example, Glassbox explicitly mentions that it will share end user personal data with their "enterprise" clients (which I am guessing are basically ad companies):

> From time to time, GLASSBOX grants certain of its enterprise clients a > license or other rights to GLASSBOX's proprietary software products and > solutions (the "GLASSBOX Solutions"). Through their use of these GLASSBOX > Solutions and/or through other means, enterprise clients of GLASSBOX may get > access to, collect and use: (i) End User non-personally identifiable > information; and (ii) End User Personal Data.

> There are also times when we will combine such information with additional > non-personal or de-identified information we obtain from other companies as > well as End User Personal Data, in order for our enterprise clients to > market directly to a certain person subject to requirements of applicable > law. We typically analyze this information and organize it into user groups > and audiences, based on factors such as age, gender, geography, interests > and online actions. We and our enterprise clients then use these user groups > and audiences, along with information about the possible relationships among > different browsers and devices, to design and deliver customized advertising > campaigns or other relevant content.

[https://www.glassboxdigital.com/privacy- policy/](https://www.glassboxdigital.com/privacy-policy/)

<comment><USER3> Are any of these apps used in the EU? If there's no user consent for this privacy policy it strikes me that this isn't GDPR compliant and these guys are just waiting to get fined. I wonder if they can get it around it by having their clients (Hotels.com, etc) essentially proxy this consent through their own privacy policies.

<comment><USER4> GDPR covers personal data. It is not universal magic dust for punishing everything you dislike.

Movement of your finger on the screen is not personal data. Screenshots most of the time aren't either.

<comment><USER3> I'm not sure how that's true when the article mentions that they're leaking users' personal data like credit cards and so forth. Also it seems Apple just released a "cease and desist" due to privacy on this front.

</comment></comment></comment></comment><comment><USER5> I'm seeing lots of "but this is super helpful to improve UI flow, and normally isn't nefarious!"

Well, as long as the app 1. lets me know and 2. lets me choose whether to have this feature on or not, I don't have a problem with an app recording my usage of it in order to improve UI flow or what have you.

The issue here is that 1. sensitive data is being transmitted via automated screenshots and 2. the users are not even being made aware of this fact, let alone being given a choice.

<comment><USER6> Options aren't good enough, the fact the code is even in there is scary and there's nothing to gurantee your selection is being respected. No telemetry code and open source to prove it is the only kind of software anyone should be installing. I'm starting to think distributing software like this should be akin to wire tapping.

<comment><USER7> If you run someone's software on your device, you are giving them a huge amount of trust. So many privacy and security concerns stem from people hoping this weren't true.

</comment></comment></comment><comment><USER8> One of the reasons why I switched from iPhone to Android is the firewall.

On my jailbroken i-devices (all of them) I was always installing "Firewall IP", and when an app was running, for any connection not previously (or globally - meaning rule applies for all apps) approved I would get a pop-up message (screenshot of an earlier iOS Firewall IP)[1].

Now with the jailbreaks being less efficient, and the Firewall IP app not been updated for a few years, I switched to Android and I am using "NoRoot Firewall" [2] for the same exactly purpose. I globally block all FB, ads, trackers

There is always the extra option for rooter/jailbroken phones to block things on the hosts file using host file selections from someonewhocares.org [3].

[1]: [https://rdsbc.files.wordpress.com/2011/03/wall1.png](https://rdsbc.files.wordpress.com/2011/03/wall1.png)

[2]: [https://lh3.ggpht.com/fXRZfgSmArBemdjABjUDu0ibP9Gis3GV5YXTVj...](https://lh3.ggpht.com/fXRZfgSmArBemdjABjUDu0ibP9Gis3GV5YXTVj_Ix5-967CtoSvZFXxAx0mQdOj0Klc=w1000-h800)

[3]: [https://someonewhocares.org/hosts/](https://someonewhocares.org/hosts/)

<comment><USER9> I think for most users Apple does a good job protecting them, but this is definitely one significant area of weakness for the platform. There are ways to implement similar controls using a VPN service[0], but of course then you need to trust the VPN operator.

[0][https://techcrunch.com/2018/10/24/smart-firewall-guardian- ip...](https://techcrunch.com/2018/10/24/smart-firewall-guardian-iphone-app- privacy-before-profits/)

<comment><USER10> One could easily host their own VPN and trust only themselves.

You could further connect to a vpn service if you wanted anonymity, although that would of course require trusting them.

<comment><USER11> > easily

it's a lot more difficult/leaky, for example it's not possible to block a certain _app_ from accessing the internet;

Sure, you can gather all the domains it connects to and block those, but those domains and/or ip addresses can change over time. And when they do, you will not notice, and the app will be able to access the internet until maybe one day you notice and start blocking the new domains/ip addresses.

</comment></comment></comment></comment><comment><USER12> I've worked with a similar library before: appsee. While it does have a little bit of value in helping trace crash reports and provide heat maps, we ultimately got rid of it and for the better. It can be hard to find and "cover up" every single place where sensitive information can be displayed. That's really up to the developer to manually do most of it, though some of it is done automatically (e.g. password fields). Even the most well intentioned developer can miss out on a label that shows th user's email or a text field with address data. And that's just the developers who know about this challenge and try to do something about it. I'd venture many don't. Just as bad is the performance hit. Taking screenshots utilizes the main thread (no way around it) and it just kills any attempts at making buttery smooth animations throughout the app. Suffice to say, such libraries are just not worth it for the perceived value they allegedly provide.

</comment><comment><USER13> A two/three years ago I noticed that inspectlet (similar tech for the web) was happily sending the passwords in clear text to their servers, even though on their website they mentioned that passwords are never sent. I sent them an email and they eventually fixed it, but I wonder how many passwords and credit card CVC data did they collect before that?

<comment><USER14> A few years ago I was doing a security audit on a site and found this very problem. The marketing department had access to the Google Tag Manager account and added several (!) almost identical user tracking plug-ins. They were capturing all form fields, including credit card numbers, passwords, etc...

The documentation talked about how to block this capture but that involved a developer getting involved and the developers didn't even know about the plug- in.

Basically, don't add a third party service to any app or website without doing a secuity review, especially if marketing, product or UX have suggested it!

<comment><USER15> That's why it's good to separate the marketing website from the main product to different domains. When you can.

* www.mydomain.com - install Google Tag Manager, let the marketing people go crazy

* app.mydomain.com - all tracking request has to go through a developer

That works well for SaaS type of products. Not so well for online stores where you want everything integrated.

<comment><USER16> > * www.mydomain.com - install Google Tag Manager, let the marketing people go > crazy

Even there, that's dangerous. Most marketing people are not trained in legal matters and install all kinds of shit with dubious legality. In addition the tons of trackers on websites make the user experience really slow. Approval by legal and tech should be the standard process, not "marketing has free rein to fuck over the company due to messing up GDPR compliance".

</comment></comment></comment></comment><comment><USER17> Why does this article specifically single out iPhones? This happens on all platforms, even web apps.

<comment><USER18> Apple has enough of a history responding to things like this to make publishing an article about bad app behavior on iPhones a plausible way to bring it to an end. If your goal is to change app store policies, including Android phones is just going to dilute the possibility that Apple responds to an iPhone article for no additional gain because Google is unlikely to do anything.

<comment><USER17> "Apple tells app developers to disclose or remove screen recording code"

You win a medal!

</comment></comment></comment><comment><USER19> I guess I'm not SUPER concerned about a given app reporting on what I do _in that app_ back to the publisher. It might even be possible to convince me it's a reasonable way to figure out what the app does well and what it needs to improve.

We could never get away with doing this for our (Windows) app, but sometimes I have conversations with people in my user base and I really, really wish I had some idea of how they got into some $random_weird_state.

But yeah, it oughta be in the T&C if nothing else.

</comment><comment><USER20> Not sure how long it's been there, but found this in Inspectlet's terms of service:

7\. Disclosure. As soon as you begin to use Our Service, You agree to add a disclosure to either Your terms of use, user agreement and/or privacy policy to inform Your end-users and customers of Inspectlet's access to their Personal Information through Your website, and adding a link to Our Privacy Policy which governs Our use of all such Personal Information accessed by Inspectlet through Your website or through Your use of Our Services.

</comment><comment><USER21> Acquiring end-user telemetry by recording inputs and sending them to the app developer is not great especially if they don't ask for your permission.

This is quite different than the sensational headline. update: fixed wording

<comment><USER17> Telemetry implies capturing data in the form of measurements. Stuff like "touchscreen swipe: element, location, and duration". A click heat-map would be an example of telemetry.

This isn't the same thing. This is an actual recording of a user's entire session. While it doesn't capture a rendered image like a "screen recorder" would do, it captures _every_ change in real-time, so it can play it back perfectly, and the end result is the same: you can watch a video of your user's session.

And I can personally confirm that people definitely stand around the water cooler and talk about the stuff they watched. It's creepy.

</comment></comment><comment><USER22> Reminds me of this research from Princeton, on the exfiltration of personal data via equivalent session-replay services for web:

[https://freedom-to-tinker.com/2017/11/15/no-boundaries- exfil...](https://freedom-to-tinker.com/2017/11/15/no-boundaries-exfiltration- of-personal-data-by-session-replay-scripts/)

</comment><comment><USER23> Anyone have an idea for how to block this on your iphone? Perhaps content filtering glassboxdigital.com? Not sure if that would stop however it is that they're transmitting back to their servers.

<comment><USER24> Possibly... I might try using Charles Proxy mobile app to observe what domains data is being sent/received from, then on your home network use something like Pi-Hole to block those domains.

<comment><USER25> Does Charles (iOS) allow capturing traffic of any app launched? Is it like a "record" button for network traffic?

</comment></comment></comment><comment><USER26> Long ago a company I worked for had an iOS app and use some IBM product for the web version (Leaf? or something) and they forced us to use it in the app as well, it recorded the contents of each page basically (some fields were blanked out). It also crashed so much it was worthless. I never found it remotely useful to have such detailed info. Tagging service calls with a GUID was much more useful, as well as recording service errors and exceptions in Google Analytics. While we of course knew who the tag belonged to (after all they were our customer's orders) it was of no use to anyone listening in or watching the tags go by.

<comment><USER27> The problem with analytics is too much info or not enough info. At each employer, I usually do my best to get involved with the analytics portion of our applications. Apart from just finding it interesting, I also like to try and interject some sanity. I've seen managers walk in, puff our their chest and say, "Just collect everything. We'll sort through it here. Make it happen." After they walk out I engage everyone in conversation about that and try and let them know that we should actually be creating a list of questions we want answered and work from there. Collecting everything is almost always not the right idea.

</comment></comment><comment><USER28> So if I'm understanding this right, the big issue they have is that they're not telling the customers that they're doing it. Can't any website do exactly the same thing in recording every keystroke written into it without a customer knowing?

Does it really even matter if you're sending them your credit card details anyway?

<comment><USER29> > _Does it really even matter if you 're sending them your credit card details > anyway?_

But are you sending them this info? I thought a lot of sites used third-party payment processors precisely in order not to handle this data themselves (and be liable for mishandling).

<comment><USER28> I guess in an app they could screen record that transaction, but if they're only storing fields and values, this is outside of what they can capture.

</comment></comment></comment><comment><USER30> This has been done for many years on the web. The first one I can recall was Hotjar, which offered both heat maps and session replay.

I have no comment regarding the ethical implications of this technology, but I can see why it is useful practically.

</comment><comment><USER31> I was in charge of building this kind of product for another analytics company, this technology is called session replay, and it is used for many use cases, like : UX improvement/ support/ bug detections ...

Most of vendors record keyboard inputs and thus can record password as well as credit card information, there was an affair about it a few years ago [1]. To not have this issue, most of vendors provide a way to not record those information. It requires manual tagging of the website on the element that contains critical content.

But many of session replays vendors have many clients, and don't force or don't verify that all the critical information are masked. This is not GDPR compliant, because when the GDPR apply you need to consent of the user to record his PII, and you are not even allowed to record information like password, sexual orientation, credit card even if you have the consent.

Two things: \- Nowadays on the web most of payment pages are not hosted on the client website, so those analytics tools are not included (but we still have many websites that don't use third party for that) \- This data is not (most of the time) recorded in a structured way, data of inputs is recorded as some element of an HTML, and thus it is not super easy to extract the information at scale

[1] [https://freedom-to-tinker.com/2018/02/26/no-boundaries- for-c...](https://freedom-to-tinker.com/2018/02/26/no-boundaries-for- credentials-password-leaks-to-mixpanel-and-session-replay-companies/)

</comment><comment><USER32> > Many major companies, like Air Canada, Hollister and Expedia, are recording > every tap and swipe you make on their iPhone apps. In most cases you won't > even realize it. And they don't need to ask for permission.

The key phrases here are "recording every tap and swipe" and "on their iPhone apps". I'm not saying it is okay, but the sensationalist headline takes away from the real issue.

<comment><USER33> I've been seeing the same sensationalist language even in "respected" publications like the NYT lately. For example, they recently published a story where it was implied that because Spotify's Messenger plugin has standard read/write permissions (necessary to ensure basic functionality like sharing songs) that it could also actively monitor, store, and modify your private messages.

In smaller publications, some shoddy reporting can often be attributed to a lack of experience or resources. It's hard to find an excuse for larger publications with well-established editorial resources, however. These stories are presented under the guise of public interest, but in reality they seem increasingly driven by politics and sinister ulterior motives. The end result is the spread of misinformation and further public distrust of the media and technology as a whole.

<comment><USER34> I doubt the sinister / political motives - these headlines and articles are nothing more than to drive traffic / revenue.

Pick a popular company / product / service, find something that they _could_ be doing, throw up an article suggesting that's what they _could_ be doing but have the title inferring that it is what they are _actually_ doing. Rinse / repeat.

<comment><USER35> However!

This is what happens under capitalism when private news organizations are disrupted by the Internet.

The solution is a collaborative news site, we don't need intrepid reporters going into war zones when everyone can record video on their phone. We don't need biased clickbait news providing fodder for soial network algorithms to herd us into echo chambers. We need a place where people of all viewpoints meet and duke it out like Wikipedia but for news.

PS: wikinews in particular sucks though

<comment> whitexn--g28h There's a difference between the photos people take on a phone and the journalism that people like Tyler Hicks do. It's just not the same. Please show me a crowd sourced article that has this impact. [https://www.nytimes.com/interactive/2018/10/20/world/middlee...](https://www.nytimes.com/interactive/2018/10/20/world/middleeast/saudi- arabia-invisible-war-yemen.html)

</comment></comment></comment></comment></comment><comment><USER36> "Record the screen" could be more precise. I assumed the article was saying apps were literally recording a video of the screen, complete with alert popups etc (like the Screen Recorder app).

I realize there isn't functionally much difference _within_ an app. But unless I'm reading it incorrectly, it's not recording the screen it's just the UI of the app. That's not nothing, but I always assumed (sadly?) that a lot of apps have been doing that for years to hone their UX dark arts.

<comment><USER37> Yeah. An equally hysterical article could be written about web servers recording your IP address and what page you visited.

Maybe this is a bit much, but developers do need some data as to how their app is performing in the real world. You might have some metrics that says 0% of visitors to your order checkout page on FooPhone 1.0 are completing orders successfully. With a screenshot, you can immediately see that that screen doesn't even work on that device. It doesn't sound like a tragic loss of privacy to me, but rather an important tool for developers to help smooth over the reality of massive device incompatibility.

<comment><USER38> It is all good until you start sending credit card details and all other personal and sensitive information without even asking user about it.

As a user, I don't care at all if it makes dev's life easier. I bought the app and don't want my personal info to be leaked.

<comment><USER39> So, we're supposed to trust the application's main process to accept a credit card securely, but not trust their system which tracks UX?

It might be one more place to screw up, but so is just having more actions your app can do.

I'm not sure I see any difference between an app recording all I traction within it (for single purpose apps, but not browsers) and a store video recording everything in it.

<comment><USER40> > So, we're supposed to trust the application's main process to accept a > credit card securely, but not trust their system which tracks UX?

Correct. The payment code is usually gone over with a comb for PCI compliance (or completely outsourced to someone like Stripe), whereas the UX tracking is much less so. It's also a common enough issue that stuff like credit cards or API codes end up leaking into logs.

<comment><USER39> PCI compliance covers all aspects of credit card numbers and how they are collected, transmitted and stored. There's no reason to believe a company you can't trust to either not grab it or transmit it or store it for UX metrics non-compliantly will take care to do so in a compliant manner otherwise for normal operations. Either they take care with important data or they don't, and for this measurement "assume it's taken care of because they offload it to some other company" doesn't really count as taking care and absolve them of the responsibility, as I'm sure a lot of developers convince themselves it does.

That said, my point isn't necessarily that you should trust apps gathering UX metrics more, but that you should probably trust all apps quite a bit less, whether they track user actions or not.

</comment></comment></comment></comment></comment></comment><comment><USER41> > Apps like Abercrombie & Fitch, Hotels.com and Singapore Airlines also use > Glassbox, a customer experience analytics firm, one of a handful of > companies that allows developers to embed "session replay" technology into > their apps.

> These session replays let app developers record the screen and play them > back to see how its users interacted with the app to figure out if something > didn't work or if there was an error. Every tap, button push and keyboard > entry is recorded — effectively screenshotted — and sent back to the app > developers.

<comment><USER42> > effectively screenshotted

IMHO that is deceptive. System alerts, notifications, etc are presented in a protect system context the application can't see so there is in fact a very big difference between recording button taps and "screenshott[ing]".

</comment></comment><comment><USER43> This is horrible reporting if by "record" they mean "log meta data like swipe coordinates and recreate it." That is not the same as record.

<comment><USER44> > This is horrible reporting if by "record" they mean "log meta data like > swipe coordinates and recreate it." That is not the same as record.

Is there much of a practical difference here? Employees at the company can essentially watch a video-like recreation of how you went through and used their app. This includes details that you might not expect such as which email you typed into a field before backspacing and choosing another to sign up with.

I want to believe that a product owner at companies like Tinder aren't watching videos of me sexting someone to "learn how we can improve the user experience". If the response is then to say "don't use Tinder!", start considering the alternatives - you end up having to trust someone, or do nothing digitally.

<comment><USER45> > Is there much of a practical difference here?

Yes, because an app provider can know a dozen different ways what they're showing you already, but nothing else on your system. There is a world of difference between Tinder knowing i dismissed an incoming text alert because I swiped up at the top of the screen and knowing what the content of that text message was, to use your example. Tinder can already log the content of the messages you send in their platform,

</comment></comment></comment><comment><USER46> sensationalist bs. how is ability to watch a screen recording of you using their app and typing in your credit card into THEIR app is different from the same app developer just pulling up your credit card info from their database? if you give the info to the app, the app owner will see your info. as discussed as that. the fact that its in a form of screen recording doesn't make it scary or dangerous.

<comment><USER47> Well, one extremely important difference is that I might trust company X in part because they will want to preserve their brand but not trust poorly-run user-analytics company Y that a part of X uses which will give X plausible deniability for responsibility.

The other is that PCI helps mitigate their handling on the CC side but those user analytics companies aren't part of that.

<comment><USER46> yeah, actually good point. in cases when customer didnt trust the merchant enough with their financial data and used paypal or whatever but the shitty merchant still saw everything. definitely not compliant.

</comment></comment></comment><comment><USER48> Watching users via tracking and telemetry is very useful in order to learn about your users. But I also think it's also unethical. With the mindset that users are "lemings" ¹ where your job as a developer is to optimize profits from these "dumb fucks"².

1: [https://en.wikipedia.org/wiki/Lemmings_(video_game)](https://en.wikipedia.org/wiki/Lemmings_\(video_game\)) 2: [https://en.wikiquote.org/wiki/Mark_Zuckerberg](https://en.wikiquote.org/wiki/Mark_Zuckerberg)

</comment><comment><USER49> Screen recording apps are fine if you want to go over how a small group of people use your website however the data is hard to analyse.

Plain old Google Analytics is a bigger deal when you think about it. Anyone that has this configured half decently where the IDs are provided by some backend server really has got the low down on how you use the website. Every aspect of 'engagement' can be recorded and reports made that don't entail watching through untold hours of 'user engagement'.

It is a bit like spying in the modern age. In the olden days any intelligence agency could throw resources at tracking one individual of interest. However if you need a team of twenty people to stalk someone then getting the budget can be hard. They would have to be the 'Chairman of the Communist Leadership' or the leader of a striking union for that to be approved. In the modern era we all know how NSA et al. do it, surveillance on everyone and able to do a report on anyone deemed 'Communist' (or whatever).

It isn't the 'everything on screen' you need to worry about as nobody except an intern is going to be looking at that. It is the half decent Google Analytics setups that are a far greater concern if you are terrified of marketing people. Yet nobody bats an eyelid to Google Analytics, the cookie notices say it is mostly harmless and just there for your own good.

Luckily though very few companies are really that competent at Google Analytics. They may have people adding ever more bloat to Google Tag Manager for this to feed various things such as affiliate marketing schemes, however the people doing SEO are rarely familiar with web development and, not understanding the 'problem space', don't realise the possibilities.

</comment><comment><USER50> Users are very bad at describing what they did when an app crashed. Recording application state and logging it is a wonderful aid to debugging. I did this routinely when deploying in-house applications.

<comment><USER51> I'm not sure what gave you the idea that you don't need permission. Why don't we go ahead and put a camera in your bathroom in case the plumber ever needs to diagnose a leak?

<comment><USER52> The same applies to web applications. Fullstory (developed by ex Googlers) and others are in this market too, but I don't see them monetizing what they get to parties outside of charging the app maker.

</comment></comment></comment><comment><USER53> Would be cool to see a non-TechCrunch link. TechCrunch shows blank pages on mobile for me

<comment><USER54> [https://outline.com/ZaJnG3](https://outline.com/ZaJnG3)

</comment></comment><comment><USER55> Ok. So what? Software and services have kept usage metrics and clickstream data for decades. They have privacy policies saying that they may collect data about how you use their product. This is that data. So, is this a surprise?

If you don't want Abercrombie to know which items you looked at, don't look at them on the Abercrombie app, or at the Abercrombie store, or on the Abercrombie website.

<comment><USER56> Abercrombie's data collection should start and end at the data I choose to send them, including the products I click on.

I do not expect Abercrombie to "see what I do in real time," including where I position my mouse on my screen, text I type and then choose to delete, my physical location, etc.

<comment><USER57> then goto the mall? except wait, probably tracked on security cam there nowadays + credit card transactions are tracked + tracking movement in the store using multiple wifi APs + tracking what you purchase internally.

the expectation of privacy when dealing with a business that can monetise the data about you in some way may be a dead thing already until the govt gets involved.

<comment><USER58> Its only dead because people choose to give up. If we don't fight it at every turn, we will keep on living in this dystopian future. The government will never step in to protect you as they want as much of this information as possible. We have already seen how politicians try to abuse any possible thing they can to get more power and/or win elections.

We need the engineers in the these companies to join the fight, refuse to install or add these features. If that impossible because there are many people who don't see this as a corrupt practice, then we need others to step up and help block and expose it.

Please don't give up on privacy or freedoms, that just dooms us more.

</comment></comment></comment></comment><comment><USER59> Replaying user behaviour is not a privacy issue. Pretty much every mobile/web app connected to the internet is doing this with varying granularity.

AFAIK it's a pretty standard practice in UX and product design. A&F might have analysed hours of your finger gesture activity, but I doubt they're gonna know what brand of toilet paper you wiped with this morning.

<comment><USER60> I would rather not having an app sending screenshots of the screen / record taps while I input my CC number.

Nor of any alerts / notifications that are unrelated to the app itself.

So I'd say it can be quite a privacy issue.

<comment><USER61> Many of these companies (e.g. FullStory, Hotjar) obfuscate all input fields for exactly this reason.

<comment><USER62> I'm sorry but they don't, at least in a sensible defaults, easy/reliable way. Unless they've changed recently. We did extensive testing and found it was up to the end user implementing the integrations, and their regard for this topic/privacy.

</comment></comment></comment></comment><comment><USER63> People that complain about this stuff obviously have never launched an app before. If you don't record what people are doing with your app, then you're not going to have any idea if anyone is actually using it, or if it is any good, or if there is anything you need to fix.

<comment><USER64> > If you don't record what people are doing with your app, then you're not > going to have any idea if anyone is actually using it, or if it is any good, > or if there is anything you need to fix.

There are other ways to get information as to what to fix, and I have no need to know what people are doing in my app.</comment></comment>


Is the main benefit from TDD something else entirely? (Author posting) - <AUTHOR> http://blog.olafssons.com/post/TDDs%20Redeeming%20Quality

<comment><USER2> Broken link --- try <http://blog.olafssons.com/post/TDD%27s%20Redeeming%20Quality></comment>


Xkcd: Orbital Mechanics - <AUTHOR> https://xkcd.com/1356/ <comment><USER2> There is a lot of opportunity to explain engineering concepts through gaming. Especially training users in intuition, and in the applications of math.

Calculus and trigonometry have tons of applications in aiming mortars!

<comment><USER3> Too bad I can't afford a gaming PC to play KSP.</comment></comment>


Poverty causing 'misery' in UK, and ministers are in denial, says UN official - <AUTHOR> https://www.bbc.co.uk/news/uk-46236642 <comment><AUTHOR> >> He said the government was preoccupied with reducing welfare dependency

I have never understood this attitude - create good jobs and watch dependency vanish is my assumption ...</comment>


Coders Programming Themselves Out of a Job (2018) - <AUTHOR> https://www.theatlantic.com/technology/archive/2018/10/agents-of-automation/568795/ <comment><USER3> The premise of this essay seems flawed.

As a manager, I actively encourage my employees to automate their jobs. Almost every sprint, there is at least one task on the board to automate some mundane detail of their jobs.

I'm happy to have them do it. It frees them to do more valuable work. "Pushing buttons" isn't valuable (we can't sell it). And like most good developers, they hate sitting around pushing buttons - they'd rather work on more stimulating problems.

It's win-win. My boss sees us doing more with less. The sales team gets more new features to sell. The employees have more rewarding days.

This all presupposes the employees aren't inherently lazy. But, that's been my experience - "lazy" developers aren't generally lazy, just bored.

<comment><USER4> > _This all presupposes the employees aren 't inherently lazy. But, that's > been my experience - "lazy" developers aren't generally lazy, just bored._

In fact, afaik, it's kinda 'proven' _loosely_ in psychology studies that "laziness" isn't a _bad_ trait per se. In fact, from our ancestral laziness comes our drive to build things (systems, organizations, machines, civilization!) to do our job for us, anywhere from 'streamlining' to 'automating'.

Many great developers are self-reportedly very ambivalent between laziness and the drive to make things — alchemy notably happens when what you make today will let you be lazier tomorrow (you probably need to be at least 25 to 'feel' it though).

Of course, being a nerdy creature, you'll rinse and repeat indefinitely — there probably never will be a shortage of things to automate in your lifetime — but that's the spirit. As you said, we gotta keep ourselves busy to balance the lazy. ;-)

<comment><USER5> I hadn't thought of the evolutionary benefits before but this makes a lot of sense. Related to this, I have noticed that I really like efficiency for sake of efficiency, which is probably a trait many other tech people share.

As a silly example, I was hiking at night recently and my headlamp had gotten a little dull because the batteries were starting to get low. Even though I had a spare set, I didn't swap them out because the old ones still had hours of power left, albeit at reduced output. The cost of a few batteries is trivial, but the thought of throwing them away while still useful bugged me more than the reduced light output. My partner thought I was crazy for this, and I don't disagree, but for whatever reason little efficiencies matter a lot to me.

<comment><USER4> > efficiency for the sake of efficiency

Oh dear rurp, you don't want to get me started on that! ;-)

Your hiking example is a textbook page of my life, I do things like that all the time. Partner openly jokes that I'm crazy / weird / funny — all in good spirits, I concur that it's not exactly statistically average (i.e. 'normal') behavior. — _" but why do you do this like that?"_, eyes usually roll before I even finish my elevator pitch; but every once in a while I catch her imitating. Good times, haha. Small victories, you know.

That being said,

I have a gazillion justifications for this. From ancient Zen and Stoicism (you guessed it) to modern scientific organization of work / tasks / labor, passing by cognitive science and physics and what-have-you.

It's. Just. More. Efficient. To. Be. Efficient!..

¯\\_(ツ)_/¯

But it's also a delusion, to some degree (when you mistake the means for the ends I suppose, when it becomes a zero-sum rat race from a 3rd person perspective). Hence a healthy distance with the concept, I treat it as one parameter/rule of our universe — _nature favors the efficient ones_ — but I've learned to just shrug at the general inefficiency of my civilization. Sometimes, I admit I'll even take pleasure and find beauty in a wildly inefficient thing that nonetheless passes the threshold of "it works", however barely. Politics, states, institutions feel like that to me: it _should_ all collapse under its own weight and complexity, and yet it goes on... fascinating feat. It's like e.g. Windows (the biggest codebase in existence, at least as reported a few years ago, 50 million lines iirc?), you have to revel at the wonder that it even works.

<comment><USER3> This is my life.

My wife does pretty much everything in a way that simply blows my mind. Probably once a day, I start to mutter "But, why....?" Most of the time she just looks at me like I'm the broken one, meanwhile I swear it's her!

Packing for a trip is the worst. For me, it's hours of over-analysis and optimization. Packing everything into a minimal volume. Ensuring nothing unneeded makes it way into a bag. For her, it's grab an armful of {whatever}, toss it in a suitcase, and assume it'll all work out. And yet, we both love traveling and we're equally as likely to forget something.

Life is strange.

</comment></comment></comment></comment></comment><comment><USER6> In my personal experience this generally isn't an issue. If you have the necessary skills to automate your own job, chances are your employer has other work they want you to do.

I worked at a fintech company for a few years a while back. I started in an entry level role doing daily operations stuff within their proprietary system. It was boring but I could see that most of it could be automated if enough effort was put into it. We were 4 people at that time. No way our dev team had the time to do it as they were always slaughtered with an endless list of demands from other teams and higher-ups. And no budget would ever be assigned to this. So I took it upon myself to learn how to do it through code. Six months later I had a solution up and running which automated about 80% of the daily work for the four of us. Did they fire the other three people and just leave me to do that remaining 20%? No, they took me and another one of the technically savvy people from the team and took us off the boring daily stuff entirely and put us on a DevOps style team where we managed ourselves and were told to just attach ourselves to whatever projects we want and just add value somehow. They promoted me. They also promoted the person who had been there the longest to make them the manager of a new Dallas team that was being created for us to pass off the remainder of the boring stuff do, as well as new initiatives that they weren't able to capitalize on because lack of headcount to handle the work. The fourth member of the team also migrated into different projects around the division. Basically, it freed everyone to do a bunch of stuff the business wanted to do but didn't have the budget for or did have the budget for but standard corporate bullshit got in the way of. This was like a godsend to them because they viewed it as getting 3 people just thrown in their laps for free.

Win-win for everyone.

<comment><USER7> Great story of how automating one's own job led to more meaningful productivity, rather than being made redundant.

> a DevOps style team where we managed ourselves and were told to just attach > ourselves to whatever projects we want and just add value somehow

Sounds wonderful - and surprising too, since businesses typically seem afraid to trust their own teams this way.

What's striking is the _autonomy_ given to the team, after the boring stuff got automated. This kind of higher-level decision making is exactly what cannot be automated (at least for now) - to diagnose areas that need improvement, and to plan and self-organize to implement it.

\---

In my work, I've also been putting much effort into automating parts of my job, i.e., build/deployment and remote management of applications.

Far from making myself redundant, I'm trusted by the company with more (and higher) responsibilities, and more autonomy to manage my own work and its direction.

Also, with the increase in efficiency and productivity, we're able to hire more people.

<comment><USER6> Glad to hear things are working well for you as well. Any halfway intelligent manager wouldn't be stupid enough to just toss you or anyone like you. They see value/skills that can be put to use elsewhere. Anyone with a growth mindset would use that human capital productively. I think only in a very stagnant, established business with no growth opportunities would they let someone go after automating a lot of things. Because they wouldn't be able to put you to use so the only way to capitalize on your improvement would be to gain your compensation back.

Yeah, the level of autonomy I was given is pretty rare. I think it was because of two main factors. First, I had several bosses over a short period of time (lots of "structural changes" at that company during that time and it was a bit hectic) and the current boss then was in London and had other issues to deal with. Second, I don't think they knew precisely what to do with me in general but since I had built up a substantial amount of good faith/reputation in such a short amount of time and surprised everyone, I think they just decided to just let me figure out what I wanted to do since I wasn't shy about telling them what I was interested in.

It was a good situation but at a company that was very messy and all over the place. A lot of things were constant fires and battles (both internally and externally). Thankfully, I had good managers when I was there who had a lot of good sense. Otherwise, someone else probably would have just clamped down on me and dictated everything they wanted me to do with this new found time.

</comment></comment></comment><comment><USER8> I worked a job productionizing models. It was a startup and the company wanted the work done quicker every time. I didn't really know how to say no, so I automated the task of converting from one programming language to another. It had a side effect of reducing the amount of bugs I'd put into code.

My boss once confessed I was the fastest dev he had ever had bumped into. I hadn't really thought about it as "automation". It was a work from home gig, where the quicker the work was done the happier my boss was, yet at the same time I only had one task, so it was socially acceptable to not have work for weeks at a time and still get paid.

<comment><USER9> I was worried whole time that you will tell your boss about your automation and you and whole team will get fired and replaced by it.

<comment><USER10> But do you have to give the automation tool to the company? My impression is that the automation tool is not part of the job.

<comment><USER11> But it's related to your job, and if your contract specifies that anything you write that is related to your job belongs to your employer, they own the automation script.

<comment><USER10> Sorry I did not make it clear. What I meant the automation tool is something like Autohotkey. Let's say I made a private software XAuto (like Autohotkey) many many years ago with tons of efforts, and then I wrote a XAuto script (like an Autohotkey script) to automate my work. Do I have to give both of the XAuto script and the XAuto software to my employer?

<comment><USER12> That would depend on contract, but, assuming you have a decently sane contract, you'd have to hand over the script, but not the software itself. However, it now sounds like you've landed your first paying customer for a license for your software.

</comment></comment></comment></comment></comment></comment><comment><USER13> I worked at a ski resort and used an automation script to reduce my night audit role down to an hour of work per night. I used the remaining 7+ hours to learn how to code.

Then I got a job in tech.

I have been automating my roles since I started working and have never had a problem telling people about my tools.

Never seemed wrong to me to become more productive through automation. I estimate my tools replace 15 hours of work per week.

I still end up working well above 40 hours per week so these tools just keep me barely above water.

The only thing automation seems to give me is more productivity, which eventually lands something else on my plate that I need to automate and the cycle begins again.

<comment><USER14> Fair point. But let's think again. When you automated the audit role you took advantage of the remaining time so you could learn programming. You had an opportunity and seized it. Now a new guy like you won't have the oportunity because you did it first. You inadvertently kicked the ladder. Before long all the low hanging fruits will be collected and newcomers will have a hard time getting an opportunity because things are already automated, no need for a new guy.

Hold off you say, there are many things to automate, and thats true to some extent. Eventually they will exhaust too at some point.

Im not bashing you for automating anything, in fact I did the same thing as you. Most of us automated something at some point. My point is, we are automating our jobs away. It will take a while though...

<comment><USER15> > You inadvertently kicked the ladder....no need for a new guy.

and so would you argue the same for the farmer who planted fields? Did that farmer kick the ladder for the hunter-gatherer?

The new guy _should_ have a different education, and provide value in a different way. May be instead of doing automate-able jobs, he/she now works as an entertainer, paid for by the guy who did the automation (as they are richer now, and can afford to do so).

The thinking that 'automation' destroys jobs is too narrow. The pie grows bigger when work is automated.

<comment><USER16> It does grow bigger, assuming that the education level of workers is increasing. This is one of the founding tenets of Scandinavian social democracy. Eventually society will expect every citizen to go to at least college. This becomes more or less tenable with tuition-free higher education.

<comment><USER17> > Eventually society will expect every citizen to go to at least college

This is not a personal dig, but you clearly did not brush with the real world. There are a lot of smart people out there that through no fault of their own couldn't go to collage, but there are others that would not get far anywhere...

That's just how the cruel distribution mistress works.

<comment><USER16> Well you're clearly no Swedish Social Democrat...

</comment></comment></comment></comment></comment></comment><comment><USER18> I think this really highlights one of downsides of being an employee. If you were the founder of company and you found a way to automate a job, all that economic benefit would go directly to you. If you are an employee, your employer gets all of it.

<comment><USER19> There is this clear split in companies between people who benefit from more efficiency and people who are viewed as pure cost factor to ideally being eliminated. That's why I am telling young people to look for jobs in companies where top management understands and values your job.

<comment><USER15> > look for jobs in companies where top management understands and values your > job.

or values your intelligence and trust in you to create value. This usually only happens if the boss is intelligent enough to see the value in trusting an employee like that in the first place.

</comment></comment></comment><comment><USER20> They don't discuss the flip side of this, which is the hell of an organisation groaning under the weight of thousands of unsupportable Excel VBA scripts and Access databases (oh, and now UIPath jobs!) whose authors have left the business, and which could fail at any moment when an upstream dependency just goes away...

<comment><USER21> I had one job which could at best be described as 'Excel VBA DevOps' it was in a bank. Someone had cost the company millions when yahoo finance changed the end point for currency conversion and no one noticed it was using stale data for a few months.

<comment><USER22> I'd argue using yahoo finance in the first place as data source is the issue here.

<comment><USER21> Excel is the issue because it hid that dependency in the right most column (ABB) on the 4th sheet of the excel file.

<comment><USER20> Excel didn't do that, the person who wrote the spreadsheet did that!

</comment></comment></comment></comment></comment><comment><USER23> If the employees owned the company, they would not fear automation and would reap the benefits. The problem is that the company is owned by tyrants.

<comment><USER24> Employees can join together and start their own company any time they want to.

<comment><USER25> Poor people can stop being poor whenever they want to. They just need to get a better paying job.

It's not that simple at all and your comment is disingenuous.

<comment><USER26> While OP's comment points out the fact that in a liberal economy you are free to start any business as you see fit, your comment simply is intentionally absurd and pointless. You are in fact free to launch your own company or cooperative. That's an undisputable fact. If your labor is so critical and all managers are useless tyrants then why are you choosing to give away your means of production to useless tyrants? By your logic wouldn't it be obvious that starting your own company is the solution to all of your problems?

<comment><USER27> Companies usually require a lot of capital to get off the ground, I think that's the subtext there but I could be wrong. Being able to operate at a loss for an indeterminate amount of time and equipment being two costs that come to mind.

<comment><USER24> I started my first business when I was 8. It cost nothing to start it. There are tons of companies you can start for nothing or next to nothing. There are books filled with ideas on such you can get from Amazon.

<comment><USER28> >I started my first business when I was 8

How much of your upbringing was atypical? How much of it was due to familial influence? Or a unique environment? It's interesting how people tend to be blind to their own privilege.

There's this pervasive idea that those who are entrepreneurs are better than the rest and therefore justifies their wealth and status. There's this other equally pervasive idea that we're all exactly equal and therefore "if I did it, you could have as well".

<comment><USER24> I did it on the sly because my parents didn't want me doing it. They were pretty angry with me when they inevitably found out.

What I did was order greeting cards through the mail and sell them door to door.

A couple years later, my family moved to Germany, and lived on a US base. I discovered that German candy wasn't available in the US, and vice versa. So I contacted my best friend in the US, and we'd ship each other the missing candy and sell it to the other kids at school. If I'd been less of a dimwit, I could have made quite a bit more money at this than I did.

> There's this pervasive idea that those who are entrepreneurs are better than > the rest and therefore justifies their wealth and status.

It has nothing to about being better. It is about entrepreneurs are willing to take the risk and make the effort, and that justifies their returns.

If you're not willing to take the risk and make the effort, that's your choice, not your lot (at least in America).

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER29> I've been in IT since the early nineties, and I see this as symptomatic of a more basic issue; putting non-IT managers in charge of IT. This used to be chronic. I'd be in board meetings trying to explain to the entire company brain trust the difference between a hit, and a page view. When they realized - after about nine months - that there were over 30 hits per page view, their entire business model went out the window. There are other fun, and unaware stories out of that job, but I'll leave it there.

<comment><USER30> On the flip side, the problem might not be with the non-IT manager.

I know nothing about your specific cases, but many managers are smart enough to understand the statement that there are 30+ hits per page view, especially when it is demonstrated with a simple webpage example with two counters (or even a clean chart). Why did it take 9 months to explain?

A requirement for almost any management role is to be able to explain things clearly to non-specialists. I have seen many engineers writing good code but hitting a wall trying to explain a simple concept to someone who does not share their exact terminology. It is a painful, toe curling sight. Let's keep those engineers writing code, they should not be managing other humans. My 2c.

<comment><USER19> You are making some good points but from my experience there is also a reluctance for non tech people to learn anything tech related. It gets brushed off the same way learning a language or math gets brushed off by people. They claim from the start that it's too hard and not even worth trying. And that behavior is socially acceptable. You can come up with a lot of easy to understand analogies but often you will regret that because often then the analogies get stretched to a point where they don't make sense.

<comment><USER30> That is a good point. In a perfect world, managers managing technology would make an effort learning it. But it is always better to assume that they did not (assume they focus on potentially harder skills needed to manage humans and teams). Instead of lamenting this imperfection, it is better for an engineer to learn how to talk effectively to non-specialists who are friendly, smart, but clueless in the topic you want to explain. This effort will pay off in spades.

<comment><USER19> I know it pays off but you can't put all responsibility on engineers. Management should also accept that they have a responsibility to learn what they are dealing with. Even worse, it's perfectly acceptable to brush off technical information as "nerdy".

In my company a lot of big projects are set up for failure from the start because the big guys often listen to slick salesmen (preferably from the outside because they don't trust their own people) and not to the people who raise concerns that are valid but hard to understand. Some things can't be dumbed down but they are just complex.

In my view a lot of dysfunction in tech projects comes from the fact the higher ups don't want to understand what's going on and also don't want to listen.

</comment></comment></comment></comment></comment><comment><USER31> At my place of work "engineer yourself out of a job" is a mantra. The end goal isn't to actually lose our jobs. The goal is to raise our individual productivity by changing the nature of our job until, over time, its a new job.

<comment><USER15> except human cognitive ability eventually declines. If you cannot extract surplus value out of your job to pay for your eventual retirement, then there's no end to this cycle.

This is why i am a big fan of having a large segment of the population be self-employed - they can extract the full benefits of their labour.

<comment><USER31> Not everyone is good at being self employed. I've done it, and I'm putting more money away now that I'm part of a corporation. Someone else may be capturing some of the value of my labor, but the part I capture is bigger in absolute terms than I am likely to accomplish on my own.

<comment><USER15> i think you mis-interpret 'surplus value' when you refer to 'more money' from the corporate employer. When I say surplus value, i really mean equity. Equity in the asset you create when doing work. With the exception of equity payments like shares (which, a lot of tech companies do), most workers do not receive any equity for the work that generates equity value.

By making sure equity is generating returns for you, that is how one prevents oneself from being automated out of a job - a job's value is an equity that is fully captured by the employer, esp. if it's a long term asset like code. You only capture this equity if you work for yourself. It is risky - failure means certain death (or realistically, just go back to being a worker, and you lose your chance to get out of the rat race).

May be a paradigm shift in society can occur to change this situation, but as i can see it, the only way one can be sure of having a retirement is to ensure one has equity that can generate the funds needed. And the only way to do that is to either work for an employer who will give that equity to you (which a lot of tech companies do), or work for yourself.

<comment><USER31> I'm not misinterpreting. I am able to buy more equity in other companies using the cash from my salary than I ever earned directly through equity sharing.

<comment><USER15> > earned directly through equity sharing.

That's because the business that is giving you some equity as compensation is underpaying you, and instead choose to pay with a cheaper alternative (cash).

The fact that the business is able to pay you such high cash rates means that the business is very profitable. I'd argue that the business is extracting some 90-95% of all the value you create, and leaving you a tiny bit (which is still high, and therefore, you get a good salary). But look at the people who owns the assets you create as part of your job - their networth is growing tremendously - much more than yours is through enumeration. This is only true because you are underpaid relative to the value derived from your work.

</comment></comment></comment></comment></comment></comment><comment><USER32> I don't think the programmer is in the wrong for not disclosing the automation. I also don't think the company is in the wrong for firing them over that.

Here's the thing: for the foreseeable future there will always be new work to do with this skillset. As one blogger put it, "we are in the business of eliminating jobs". And it will be _a long time_ before we eliminate all automatable work, if we ever do. Even if you automate one job for yourself you could find something else with which to continue growing and challenging yourself. You could also kick back and continue to (truthfully) fulfill a transaction you've made with your employer: X compensation for doing Y work. Nothing wrong with that; you don't owe them more than that. You may be taking a risk, but that's your decision to make.

<comment><USER33> When company fires such an employee who is innovating and cutting costs, it's like killing golden goose. I am not sure why any employer would think of loosing such valuable asset when in fact they can get more automation done from him.

<comment><USER32> True, if they can convince him or her of that then that could be a third option. On the other hand, the employee did display a willingness to be deceptive. Again, it's all up to the parties involved.

</comment></comment></comment><comment><USER34> Which online courses and books would you recommend to build competence in automation within the MS Office ecosystem?

I'm not a coder but I would like to automate some of the more mechanical/repetitive aspects of my work, e.g. generating reports from csv files, pulling comments from Word files into a separate document, dashboard creation of live data in Power BI etc.

<comment><USER35> I haven't read it in detail, and I don't know how difficult it is, but there's a free book on how to (among other things) automate Office applications with Python:

[https://automatetheboringstuff.com/](https://automatetheboringstuff.com/)

Chapter 12-14 look relevant to you (Excel, Word, and CSV).

<comment><USER36> I have read it, and it has become my most recommended book for someone trying to get into programming or technology in general. It won't tell you how to do every single thign in the universe, but it can give a great starting point for automation and programming in general.

</comment></comment></comment><comment><USER37> It's a shame there's no room for people who want to work less. Some people see that they can do a job faster and think of the higher productivity they now have space for. They expect higher compensation for their new ability to do more work in the same hours. Other people see that they can do a job faster and think of the extra free time they now have space for. They expect the same compensation and the same amount of tasks, but fewer butt in chair hours.

The system we live in only has room for the former, and often people don't even get the higher comp for being extra productive. They have to take the new skills and leave for a different job. Nobody gets to (openly) work less.

<comment><USER4> I think you need to become more independent from the 'system' you describe; i.e. go freelance / contractor / consultant / remote etc., some variation of these.

I think I really don't trust the author of Rich dad poor dad but the one thing he got right is the ESBI system ("cashflow quadrants"). — I'll let you google but the gist of it is simple: there are only two limited resources, money and time, and any work is a trade of one for the other. You want to be in a position wherein you generate 'enough' money to 'buy back time' essentially. That means being either a business owner (B quadrant) and/or an investor (I quadrant).

Freelancing is the "S" (specialist) quadrant, you don't want to be there forever — because revenue only comes from putting in hours, it's a neverending grinding wheel, however profitable it seems. What you want is to setup your 'freelancing' as a 'specialist' to grow into hiring people and thus become a business.

Never forget that more than 80% of GDP in rich countries is made by small businesses. Groups of 2, 5, 10, 20 people make up the effective wealth of our economies.

Deep down that's what The Millionaire Fastlane or The 4-Hour Week expose to the general public, this idea of relative independence combined with a business model that cumulatively earns you ever more time — and hiring is key to unlocking that, multiplying manhours around your activity, sharing the load, not being "required" yourself for the business to run. A group of well- organized devs could probably wrap 30-hours weeks and still make a ton of money.

</comment></comment><comment><USER38> On some occasions I've found ways to significantly automate large parts of my coding job - usually with DSLs plus code generation, an interpreter, or eval() ( evil() ? )

In most of these cases, rest of team was none too happy. Upstream teams would need to speed up to keep me busy, and downstream teams need to speed up to stop new work from queueing up. Best policy was to just keep speed up on the down-low and selectively deliver faster only when politically advantageous - e.g. under the gun by management.

<comment><USER39> i am surprised by the amount of people smart enough and capable enough to understand how to automate chunks of their work but not understand this right here. dl automation is sometimes worth more.

</comment></comment><comment><USER40> Lots of programmers don't want to automate their jobs because they have to be present at work, and their work pays too damn well to quit. There 's also the possibility of building an automatic SaaS or other kind of service and be financially independent, which they might be missing out (or opting out of, considering that it doesn't pay as well, especially in the current year).

I agree with the article that automating your job is completely ethical. What's unethical is wasting people's time keeping them at work after they have delivered the value they 're hired for.

</comment><comment><USER30> First, as humans, we should not really be doing many jobs that the machines do well (cleanly, cheaply and reliably). That is not always how the world works. Technology adoption lags and there is a big gray area in the definition of "well" or "well enough" that means humans get to do a lot of machine-ready jobs for a while. But "knowledge workers" especially should not expect to be doing "machine ready" jobs forever _and_ be paid a lot of money for it.

But done right, "programming yourself out of a job" is a significant job advantage, not a disaster that the article paints it to be. Many managers _highly_ appreciate smart engineers who can do a good job on heir assignments (if yours does not, find another one even if your job is not machine-ready). And delivering a reliable, automated solution for your own task is one of the strongest indicators that you are one of those engineers.

One way to do it is, once your solution is ready, to have a one-on-one with your manager and tell him that you can build a fully automated solution in, say, two months while keeping your current load. Would he be interested? If so, what would be his plan for you after you complete your task? You are interested in X / career path to Y / etc. Use free time to start ramping up on new role. One benefit of this "soft transition" is to have a fallback if you feel the new project is not the right fit / not welcoming you. You can always go back and say that automation is not ready yet and ask for a new project / another couple of months. My 2c.

</comment><comment><USER41> Amazing amount of cognitive dissonance in these comments. Simultaneously happy to pat oneself on the back for automating some task yet thinking same can't happen to you because ... ? Don't spear & shield yourself.

[https://en.m.wikipedia.org/wiki/Irresistible_force_paradox](https://en.m.wikipedia.org/wiki/Irresistible_force_paradox)

</comment><comment><USER42> post needs a _(2018)_ label in the title. last discussed at the time: [https://news.ycombinator.com/item?id=18120322](https://news.ycombinator.com/item?id=18120322)

<comment><USER43> [https://news.ycombinator.com/item?id=18136371](https://news.ycombinator.com/item?id=18136371)

Some jobs are better not doing yet egos are allowed to dominate

</comment></comment><comment><USER44> When most engineers automate repetitive work flow, they seek praise and then find other useful things to do. I think automating, then being lazy, is an exception rather than rule for most.

With that said, I do believe AI will replace most developers in our lifetime. Particular ones like me, that create run of the mill relational systems for SMBs. I didn't need to go to school or get a fancy CS degree to do what I do. Nothing cutting edge. AI will cut deep into development like everything else eventually.

A lot of what we do is converting business rules into code, storing that data, returning it, and performing some useful operation with it. The remainder is making the systems easy for humans to develop on (be it DevOps or clean design). That whole last part doesn't matter to AI, in fact it's really a waste of time when you remove human engineers. Even still, AI can figure out SOLID principals, cyclomatic complexity, style guidelines, and general human readability if it needed to, but why?

<comment><USER45> > With that said, I do believe AI will replace most developers in our > lifetime.

I don't see this happening. I don't believe AI is anywhere near sophisticated enough to tackle the majority of problems that developers are solving on a day to day basis. Even if we somehow manage to have a major breakthrough with AI, it's not going to be commercially available/viable enough for average-joe dev shop to implement it.

I'm far more worried about AI replacing lower income jobs and widening the pay gap even more than I am about tech workers losing their jobs.

>A lot of what we do is converting business rules into code, storing that data, returning it, and performing some useful operation with it.

Sure, but you still need someone to make those business rules. I don't see AI being able to interpret the direction of MBA filled meeting rooms without some sort of translation later (i.e., developers).

AI is hype right now. I have not yet been convinced of its practical application, or anyone's real desire to invest in it (other than the handful of companies who would benefit off of its implementation).

<comment><USER44> I just find it interesting that the audience of this site, can't fathom engineers being replaced by AI. Not even in the next 50 years? That would put me in my 80s.

My Dad will be in his 80s in 15 years. If we look at the landscape of computers when he was my age, 30s, the big thing was still mainframe computers. The internet barely existed. Smartphones? Nope. What was the big programming language in 1990? Was it Pascal, BASIC or C++? Java wouldn't even come out for another 5 years. 15 years before that he was still loading punch cards into machines.

I guess we will just see. I won't be the surprised one though.

</comment></comment></comment><comment><USER46> The "feeling of doing something wrong" \- as mentioned in the article - <USER2> automating your tasks is somehow relevant but not in current context of alienated work. For natural working context (e.g. a team) it's normal to look for something else to do once you finished your tasks or got rid of them completely by automation. It is because the natural flow of profits considers you as as beneficient. Dooing good for your team, company, etc. = doing good for yourself.

On the other hand in current working context that feeling arises as an error (like non-adaptive-anymore feature of organism, not yet cancelled by evolutionary processes).

</comment><comment><USER47> Created a system that took report requests from a mainframe and ran then on a PC version of the system (saving the company more than double my salary every year). When the IT application support was outsourced (big 3 letter mainframe and PC computer company). The contracted cost per year to support the system that I wrote and up till then was still maintaining was 5 times my annual salary - companies have their own weird logic.

<comment><USER48> Your salary is not your total cost to the company. Having said that, 5x your salary is a bit high. It may be including other costs.

</comment></comment><comment><USER49> I wish it was even 10% true. There's still so many mundane tasks in software engineering that I need to waste time on doing manually... I regularly waste significant amount of time on setting up deployments, configuring logging, monitoring and alerting, organizing data for tests, and a myriad of other mundane non-creative tasks that take time from real fun job - like designing and implementing new algorithms, functionality, features, etc. Most of these not only not automated to a significant degree - they are small and varied enough that automating them wouldn't probably even be possible without spending inordinate amount of time. Those rare happy circumstances where it is scriptable, it gets scripted and it's a huge help, but never in my multi- decade career as software developer I ever wondered if what I do can be done by a script. I'd be happy if even 1% of it could be - I'd have 1% more time for the fun stuff - but we not even there yet.

</comment><comment><USER50> This seems to be mostly non-tech jobs being automated. The expected result of hiring these people is whatever menial work they were doing (not trying to be insulting, menial work is where automation thrives). Tech jobs, are already about automation (to a degree) and that is the expected result of hiring a dev.

Therein lies the fundamental difference. If a dev automates, they are doing what they are being paid to do, if a non-dev automates, they are no longer doing what they are being paid to do (in the eyes of the company of course, we can have a whole different argument about whether they are being paid for effort-input or value-output).

</comment><comment><USER51> Over a decade-plus consulting career I always tried to either discourage spurious new projects or work myself out of current engagements. While this was locally sub-optimal it led to long-term relationships that meant meaningful work, strategic initiatives and more money.

You could also try hoarding knowledge in an effort to maintain your value but this strategy also has a limited shelf-life.

I'd politely suggest you don't focus on solely optimizing the status quo until you're near the end of your career and ready to ride it out. Otherwise you will be in trouble down the road.

</comment><comment><USER52> I've been attempting to automate making api's at work. Now I'm pretty close to deploying an entire aws backed api/storage using a graphql schema. Unfortunately, my boss constantly changes his mind concerning what the architecture should look like. Lol It's okay though, a lot of functionality can be reutilized across architectures.

Oh well. Some day I'll be tasked with making an api, write out a gql schema from a requirements doc, then deploy the thing in some rogue amount of time, only known to me, and anyone else who reads my confluence docs.

</comment><comment><USER53> I had a nightmare once, where I was sitting at a desk in a small room coding. Somebody asked me what I was doing.

"I'm writing Cobol Printer Drivers. Its the last programming job in the world, because they've got machines to write everything else".

A person walked in the door with a box, and set it on my desk.

"What's that?"

"Its a device to write Cobol Printer Drivers."

I got up, walked to the door and opened it. Outside was nothing -just a grey fog.

Then I woke up sweating.

</comment><comment><USER54> Can't automate meetings, can we?

<comment><USER55> I hate meetings with a passion, and I work in HR data for a very large (40k+ employee) government employer in Western Europe.

I got myself in a bit of trouble by attempting to produce an automatically generated "meeting cost" report to dissuade people from having meetings.

The script pulled salary data for attendees of each meeting (pulled from Outlook calendar), length of meeting and even used the Bing maps API to capture travel costs for each attendee.

When I mentioned it to my manager, he promptly killed it. Although he is very much anti-meeting, he pointed out that it could easily be targeted by a Freedom of Information request and used as a political weapon.

</comment></comment><comment><USER56> so far what seems to capture people's imagination is news about automation taking work of IT workers/developers as well as jobs belonging to service industry and manual/labor intensive jobs.

However, the game changer will be when automation starts to replace legions of lawyers, insurance Professionals, underwriters, traders, Capital Partners, Accountants, etc. To the point the judges and doctors would be relying completely on automation to simply operate/serve as human checkpoint.

</comment><comment><USER57> Where can I find these people who have automated everything about their jobs? (Assuming their jobs were complex at all) I would like to hire them ...

<comment><USER58> I keep trying, but shit just keeps piling up. It's like programming skills are generally useful or something.

</comment></comment><comment><USER59> If I don't automate parts of my job, I can't move on to other projects due to time constraints.

</comment><comment><USER60> I really hate the word "coder"</comment>


Ask HN: Why do we pay for domain names? - <AUTHOR>

There are over 100 million domain names registered, which I'll assume average out at $15/year (being conservative). All said and done, that means $1.5 billion in revenue for the countries and corporations that own TLDs, which were assigned by ICANN.
Should DNS be crowdsourced, with the cost of the domain name accurately reflecting the cost of operating the DNS network? Even at $0.01 per domain name per year, we would still have $100,000 to operate the DNS network.
Is there something I haven't considered, or does the current system need to be replaced? <comment><USER2> Sure have it cost $0.01 and then for your $0.01 you can get your very own thisismyuniquedomainname4311.com because everyone else got there before you.

</comment><comment><USER3> If domain names cost $0.01 a year, wouldn't domain squatting become worse?

<comment><AUTHOR> I look at it like emails – yes, we could make it so that it costs $0.50 to send an email, and this _would_ make less people spam... but it isn't an elegant solution.

I think that domain name squatters should be flagged and the domains should be removed if they aren't being used appropriately. Furthermore, bulk domain registration should be banned – I can't think of a simple reason that this should be allowed.

<comment><USER4> How is that inelegant? That would be a fantastic solution to email spam!

> I think that domain name squatters should be flagged and the domains should > be removed if they aren't being used appropriately.

Who gets to flag squatters? How do we define "used appropriately?" Who gets to decide whether a squatter meets that definition?

A system of flagging is more complicated than you think.

</comment></comment></comment><comment><USER5> The main answer seems to be `domain squatting'. Obviously this is a definite concern, but couldn't it also be solved by having TLD owners instituting some requirement to the effect of ``if you've owned your domain for over a year but still haven't used it for anything, we're taking it back''?

Of course, that leads to concerns over what qualifies as `using', but I'd imagine something could be worked out.

</comment><comment><USER6> Monopoly and regulation. Rather, monopoly is why it costs so damn much. Regulation is necessary because we need to have one internet, not many.

<comment><USER7> Exactly. Most of that $15 goes directly to ICANN and Verisign. [http://www.hostly.com/hosting-info/much-domain-names- cost-15...](http://www.hostly.com/hosting-info/much-domain-names- cost-1523.html)

<comment><USER8> Not quite.

 _ICANN Fees

ICANN charges a fee for each domain name registered. The fee is 20 cents per domain._

The domain registrars pay additional fees to ICANN, but it's hardly anywhere near the 90+% you quoted.

</comment></comment></comment><comment><USER9> Have you looked at Namecoin? [0] [1] Apart from being a cryptocurrency, it supports a decentralized DNS.

[0] [http://namecoin.info/](http://namecoin.info/)

[1] [https://en.wikipedia.org/wiki/Namecoin](https://en.wikipedia.org/wiki/Namecoin)

</comment><comment><USER10> In a sense, domain names are similar to (software) patents. They're considered private property. Which is, imho, a very bad idea. It's a kind of legal extortion, just like patent trolls and software patents in general. And unused domain names ownership hurt entrepreneurship the same way patents hurt it.</comment>


Closing Time: The history of America is the history of the automobile industry - <AUTHOR> http://www.believermag.com/issues/200909/?read=article_cohen <comment><AUTHOR> _Here's what Reed learned: everything done and said by a car salesman—the test drive, the patter about city mileage versus country, the talk about air bags and safety—is simply an effort to get the buyer into the room where my father went back and forth at Foley Cadillac. Everything said before the room is like the forgettable small talk around the keg at the frat party—upstairs, in the room, with the lights out, that's where the true artist, otherwise known as the closer, is revealed.

The room is bugged—know that. A manager in back is eating a sandwich as he listens to every word you say. When a salesman excuses himself to use the bathroom, he is really going to talk to this manager: get orders, execute a plan. At the beginning of the process, the salesman takes out a piece of paper divided into boxes. This is called a four-square. He writes a number in each box: the price of the car, what you will get for your trade-in, the amount you will put down, the amount you'll pay each month if financing, which you probably are. "[The manager] stressed the price of the car should be written in large clear numbers to give it a feeling of authority," writes Reed. "He added we should always write '+ fees' next to the price of the car…. Good penmanship is essential," he said. "This makes it harder for them to negotiate."_

</comment><comment><USER2> I am a sucker for any story that has a long highway in it. This is a marvelously written view of the intertwining of the automobile and the second half of our nation's history.

If one is concerned about peak oil or some other factor driving down the pretty much unlimited ability to travel, this suggests a major change in a large number of the aspects of our daily life and culture.

</comment><comment><USER3> This article made me want to go and re-read this one: "Confessions of a Car Salesman"

[http://www.edmunds.com/advice/buying/articles/42962/article....](http://www.edmunds.com/advice/buying/articles/42962/article.html)</comment>


Startup School Highlights (video) - <AUTHOR> http://ycombinator.posterous.com/startup-school-09-highlights-video

<comment><USER2> "I'm a nobody" in the end was really funny to me, because those other "somebodies" (farmville developers) were really also nobodies no 99.999999% of the people in the world. I bet even the people who play farmville don't give a damn either.

Frankly I think he's more cool than the other guys just for admitting to it. High-fives and thumbs up for him.

<comment><USER3> Nobodies ftw

</comment></comment><comment><USER4> This is a very very well made video! Just giving my appreciation where appreciation is due. Very nice, and I love the summation of the entire event: _"for all the nobodies...Go For It!"_

<comment><USER5> High production values, lighting, editing, music and so on. This is a professional mini-doc.

</comment></comment><comment><USER6> Does anyone know if there are full videos of these presentations available?

Thanks.

<comment><USER7> Here are the archived justin.tv videos: <http://www.justin.tv/startupschool>. I believe I heard something about edited videos being available at some point as well (can anyone clarify that?).

<comment><USER8> I've heard from multiple sources that they will appear here: <http://webcast.berkeley.edu/events.php>. I don't know if that means Berkeley did their own recording, or if this will just be less compressed version of the same videos.

</comment></comment></comment><comment><USER9> Hope we get a good Nobody Revolution going on..Year of the Nobody?

Ipod download of the video: <http://bit.ly/2DNgC3>

More video clips slowly getting up here: <http://www.youtube.com/alexalee>

@alexalee

</comment><comment><USER10> Just heard Mark Pincus speak with Bing Gordon again yesterday - he's just a really funny guy. Also used the phrase "level up to refer to employees several times... guess that's what you get from a CEO in the gaming space.

</comment><comment><USER11> Hey that's me! (The goober with the hat at the beginning.)

Glad to see the video turned out so well, despite us nobodies being unused to talking to a camera. ;)

</comment><comment><USER12> Great video, definitely sums up the experience. I enjoyed my time at Startup School '09.

</comment><comment><USER13> Damn I wish I was there.</comment>


Deep Networks with Stochastic Depth - <AUTHOR> http://arxiv.org/abs/1603.09382v1 <comment><USER2> I suspect this was posted because of Delip Rao's write-up[1] (which I suggest might be a better link).

It's a nice - if somewhat controversial - summary.

40% speedup on DNN training with state-of-the-art results.

[1] [http://deliprao.com/archives/134](http://deliprao.com/archives/134)

</comment><comment><USER3> It's kind of bonkers that this works. It suggests that the whole belief that layers are learning different representations is completely wrong: if layer three is expecting a certain kind of intermediate representation from layer two, and is then given the raw input, one would expect layer three to choke.

Instead, the depth seems to be giving something like a progressive unwinding of the feature space.

It would be interesting to compare the trained networks to networks trained in the usual way, to see if they're coming up with similar coefficients in spite of the different training methods, out if this is producing something completely different.

<comment><USER4> Note that this was done for 100-1000 layer depth. So each individual layer only slightly increases the "high-levelness" of the features. In the same sense, that is why Deep Residual network works - initially, all layers are close to identity.

</comment></comment><comment><USER5> Having not read the paper, something I find unclear: is it only the feedback path that is skipped, or is the feedforward path also skipped? The abstract mentions replacing the layer with an identity function. I'm not sure how this would work, wouldn't it change the result (i.e the encoding used by the following layer would be corrupted) if you just multiply the inputs by 1 and add them?

Otherwise, how precisely do you "skip" a layer without corrupting the training of lower layers?

Edit: the answer is in the definition of "skip layers", introduced in a previous paper: [http://arxiv.org/abs/1512.03385](http://arxiv.org/abs/1512.03385) which introduces identity functions into the layer equation.. I guess I have more reading to do on this topic.

<comment><USER4> The full layer is skipped. I.e. replaced by identity. Sth like g(x) = switch(prob, x, f(x)).

Deep Residual Networks are similar but different. There, you add with identity. Sth like g(x) = x + f(x).

<comment><USER5> Yes, but my question was more, when the layer is "skipped", what happens to the input for the next layer? But clearly, it is designed such that the identity function still provides somehow useful information to the next layer. (i.e doesn't significantly transform its domain and range) I was wondering how this could work. It's just that, intuitively, I would think that the next layer is being trained on a specific transformation performed by the skipped layer, so I still don't fully understand how replacing a whole layer with the identity function doesn't completely mess up the training of all subsequent layers. But maybe the secret is that it only lasts for a small number of iterations, and perhaps this short-lived deviation actually helps inject some minima-escaping trajectory. (I have read that injecting random noise can have similar effects. Is this just a different kind of random noise?)

</comment></comment></comment><comment><USER6> I'm reading Delip's followup post[1] and it reminds me how much of ANN stuff is till pretty much alchemy.

[1] [http://deliprao.com/archives/137](http://deliprao.com/archives/137)

</comment><comment><USER7> This is literally one of the most exciting papers I have read recently that will have quite some impact on deep learning models. The major drawback of deep architectures today is training time and any.improvement to that will have a drastic effect on my productivity.

Right now I basically run N architectures on N GPUs at the same time to speed things up. And that's a luxury.</comment>


Be a Jetpack Test Pilot - <AUTHOR> http://cgi.ebay.com/Be-a-Jetpack-Test-Pilot_W0QQitemZ170383282277QQcmdZViewItemQQptZLH_DefaultDomain_0?hash=item27aba29065&_trksid=p3286.c0.m14#ht_720wt_1108

<comment><AUTHOR> I want one...!

At first I thought that was the price of the unit. ;)

<comment><USER2> if only :)

</comment></comment><comment><USER2> um... you pay THEM to do that? something doesn't add up here

</comment><comment><USER3> Yeah $30,000 to DIE!

</comment><comment><USER4> The engine-out glide capability for that aircraft troubles me.</comment>


A Template for Understanding How the Economic Machine Works (2011) [pdf] - <AUTHOR> https://media.economist.com/sites/default/files/pdfs/A_Template_for_Understanding_-_Ray_Dalio__Bridgewater.pdf <comment><USER2> The "Business Cycle" section on page 17 is basically a blueprint for money and finance in decade-sized chunks.

1\. Early Cycle. Low interest rates and lots of credit increase sales of big- ticket items.

2\. Mid-Cycle. Slowing economy, low inflation and interest rates, consumption falls.

3\. Late-Cycle. Capacity constraints surface and interest rates rise. "The stock market stages its last advance."

4\. Tightening Phase. Central bank raises interest rates in anticipation of rising inflation.

5\. Early recession. GDP, inflation, stocks, and hedge assets fall as central bank keeps money tight.

6\. Late recession. Central bank lowers rates, stocks rise. Cycle complete.

According to this roadmap, step (4) began about one year ago. In addition to increasing interest rates the Fed has committed to unwinding its QE assets from the 2009 aftermath.

The take-home message is that the Fed causes recessions according to a very predicable pattern. This came as quite a shock when I first read about it in the book "Secrets of the Temple."

Also, there are a lot of gems tucked away into various corners of this essay, including this one:

 _... a big part of the deleveraging process is people discovering that much of what they thought was their wealth isn't really there._

<comment><USER3> If your above assertion is correct, what should Joe 401k do to best weather the pending storm?

Presumably buy and hold still rings true as A Random Walk Down Wallstreet shows us that ultimately, it's just best to ride it out without selling.

<comment><USER2> _...it 's just best to ride it out without selling._

Maybe, but psychology will work against you. Would you be comfortable sitting on a 70% loss of your life savings with no end in sight?

If so, buy and hold might work. It doesn't for most people.

<comment><USER4> It's not a loss until you sell.

</comment></comment></comment></comment><comment><AUTHOR> Ray Dalio's LinkedIn post, with context and summary of the new book (available as a free PDF) - [https://www.linkedin.com/pulse/understanding-big-debt- crises...](https://www.linkedin.com/pulse/understanding-big-debt-crises-ray- dalio/)

Direct link:[https://principles.us13.list- manage.com/track/click?u=f81713...](https://principles.us13.list- manage.com/track/click?u=f817138263fa3d3dec4ad231d&id=1881b360ad&e=557baf7749)

</comment><comment><USER5> I find this very useful, every now and then i make it a point to watch his video to remind myself of the macro view on things [https://m.youtube.com/watch?v=PHe0bXAIuk0](https://m.youtube.com/watch?v=PHe0bXAIuk0)

</comment><comment><USER6> The title made me thing of the MONIAC: [https://www.wikiwand.com/en/MONIAC](https://www.wikiwand.com/en/MONIAC)

</comment><comment><USER7> Without a peer review, if I were to base financial decisions on this, it could be dangerous, especially the finer points.</comment>


Waymo's self-driving trucks get hired to cart limestone around a Norwegian mine - <AUTHOR> https://newatlas.com/volvo-self-driving-truck-norway-mine/57397?nowaymo <comment><AUTHOR> Curious why everyone is at the same time so excited about Waymo (me too!), but ignoring others which also deliver working tech. Nobody cared about same news, but with Volvo in title: [https://news.ycombinator.com/item?id=18542136](https://news.ycombinator.com/item?id=18542136)</comment>


The first long-lived mutants – discovery of the insulin/IGF-1 pathway for ageing - <AUTHOR> http://rstb.royalsocietypublishing.org/content/366/1561/9

<comment><AUTHOR> Since many pop science articles are showing up in the media these days on protocols to retard the aging process maybe readers of Hacker News might find this more technical 2011 article from the British Royal Society - Philosophical Transactions interesting. It's both reflective and unintentionally illustrates office politics in research labs.</comment>


Shadow banned in Google Play - <AUTHOR> https://medium.com/@cercaapp/shadow-banned-in-google-play-or-the-joys-of-being-an-indie-app-developer-14ffbfd223db <comment><USER2> Is it just me, or is a pattern of exploiting search monopoly emerging here? First yelp a few years ago, then protonmail, then this

<comment><AUTHOR> I think it's analogous to how Google search works in relation with SEO. Right now you have to divine what it's happening when you app is removed from search results.

Worst is Google Play developer support won't even tell you why it did happen so you can only do blind changes and hope for the best.</comment></comment>


Pussy Riot members jailed for two years for hooliganism - <AUTHOR> http://www.bbc.co.uk/news/world-europe-19297373

<comment><AUTHOR> "their intention was to spread information and pictures of their acts through blogs and other internet means" - the judge

<comment><USER2> So Putin and the court are helpfully assisting them in this intention by providing much needed promotional support after consultation with Barbra Streisand on how to best handle the issue.

</comment></comment><comment><USER3> Quite unfortunate indeed, truth be told Pussy Riot acted recklessly too.</comment>


Ask HN: Do Beta lists still work? - <AUTHOR> I have been out of the building a SaaS game for a bit and now working on a new side project (I can post what it is if anyone wants to know, but didn't want to self promote off the bat).<p>I remember a few years ago, a beta list was hugely valuable and signups seemed to flow in quickly and easily. Does anyone still build beta lists? Find/found success? Stories around that? <comment><USER2> A German startup in the fintech sector (basically offering managed etf portfolios for retirement) started with a beta sign up waiting list a few months ago.

I found this very irritating and a bit out of its time as a customer, not to mention the missing desirability for most people. Even I as someone who is interested in startups and fintech felt not really like yeah, yeah sign up now.

So, I personally would not do it.

Having said that, I haven't heard of startups with reduced performance or outages because of overwhelming demand for a long time. Maybe, web dev stacks got more professional and scalable, or the time for easy sign ups out of curiosity is over?</comment>


"Piss Prophets" and the Wheel of Urine (2019) - <AUTHOR> https://www.forbiddenhistories.com/uromancy-lindsey-fitzharris/ <comment><USER2> Something refreshingly different on HN. Thanks!

</comment><comment><USER3> Icky!</comment>


Russia Bans Sale of Gadgets Without Russian-Made Software - <AUTHOR> https://www.bbc.com/news/world-europe-50507849 <comment><USER2> Only covers snartphones, computers, and smart televisions... but what will need to be installed?</comment>