Random Thoughts – Randocity!

Can Trump actually ban TikTok?

Posted in banning, government, spyware by commorancy on August 1, 2020

There are two sides to this question. Let’s explore both sides.

Technological Ban

Could TikTok actually be technologically stopped from working? Yes, and to be honest, it wouldn’t take that much effort, though it will take some time. Let’s explore how this works.

Domain Name Service (DNS)

DNS is a fundamental internet service that maps Internet names, like google.com, into an IP address, like 8.8.8.8 (which is Google’s DNS server IP address, actually). When you type in a name into the address bar of your browser, DNS converts that name into a numeric IP which is how your browser then connects to and serves you (and your browser) that web content.

This same system applies to all apps including apps like TikTok. When you launch an app on your phone, the app then uses DNS to resolve its service into an IP address which then connects to, for example, TikTok’s servers to begin serving you (and the app) its content.

DNS is the Achilles heel of the internet. It is both a cornerstone and a single point of failure. If DNS fails, then apps fail to connect to their required services.

This is the first touch point where Donald Trump could target. Donald Trump can mandate that the registrar who operates the domain tiktok.com drop serving DNS for this domain… assuming it operates within the United States (hint, it doesn’t).

Further, the secondary non-authoritative DNS system (those servers operated by your ISP or phone provider) relies on caching (or temporary memory storage with expiration timers). So long as the timer hasn’t reached zero, DNS will continue to serve content for that domain based on what’s in the cache rather than asking the authority each time (much faster performance). However, most domains have, at most, a 24 hour countdown timer on cached data. At the end of that 24 hour period, the cached data must be renewed into the cache. If the registrar has disabled DNS resolution for a domain, the cache will fail to renew and the service will go offline.

What that means is that as caches around the Internet slowly expire after the domain registrar has pulled the DNS plug, TikTok will stop working.

The difficulty with this request is which registrar handles this domain. It appears that the tiktok.com domain is operated by the registrar ename.com. Visiting the ename.com registrar’s domain shows that it’s written in Chinese. Since this domain and its IP space is registered and operated outside of the United States, Trump may find it hard to get the registrar to do anything for him.

Even still, Trump could request (via executive order) U.S. based Internet Service Providers to block the tiktok.com domain from being served within U.S. bordered DNS servers. See ISP blocking below for more on this.

App Store

Donald Trump can further request both Apple and Google to remove the TikTok app from each respective app store. This action doesn’t stop the app from working for those who have downloaded it already, but it does stop new users from downloading it. It also means no more app updates for this app.

When Apple or Google release a new operating system update, they can then stop the app from working entirely. In fact, these OS creators could, in fact, wipe the app from any remaining devices with it still installed. However, they can also simply block the app from launching. However, this part can only work if Apple and Google release updates that explicitly perform this operation and that both of these companies agree to doing this in the first place.

Internet Service Provider (ISP) Blocking

The third avenue that Trump can seek requires ISPs to block network access to TikTok’s servers within the United States. This requires contacting and requesting this action of many ISPs all throughout the United States, including all phone carriers like AT&T, Verizon, T-Mobile and Sprint. This is a long tail request and could take weeks to see roll out. This one also has a low probability for success as ISPs are notorious for not wanting to be told what to do or how to run their networks. This particular request is not one that will work quickly or, indeed, at all in some cases… until the DOJ brings action against ISPs that refuse to comply.

In addition to blocking access at the network level, he can also request DNS blocking for the tiktok.com domain within United States DNS servers operated by ISPs. Basically, an ISP double whammy… assuming ISPs agree (or are forced to agree) to these terms.

App remains functional?

For a time after Donald Trump requests DNS and network IP blocking, the app could remain functional on devices that have it downloaded. Why? Because DNS has up to several day caching in combination with the fact that network IP blocking can be circumvented by the use of a VPN. Though, exactly how many kids are going to run out and buy a VPN service just to use TikTok is unknown.

If Donald Trump can get all four actions lined up (the first three at least) as follows:

  1. App removal
  2. IP network blocking
  3. DNS blocking at the registrar
  4. Secondary DNS blocking within U.S. ISPs

Then, the app may stop working as early as 24 hours for many and for as long as a week for outliers. It is also dependent on how long it takes for each of these steps to be completed. Some companies require long convoluted internal processes and testing to avoid inadvertent screw ups before changes are allowed to proceed.

All of these technical measures are ALL doable. They will all work IF everyone complies (and that’s a tall order).

The most damaging of these four banning steps is seeing Tiktok removed from the app store. If Trump can get the app removed from the stores, this cripples TikTok’s ability to gain new users. That means that for a time, users who have already downloaded the app can continue to use it. But, as they buy new phones, restore their phones before it was installed or if they accidentally delete the app, the app is gone forever. No more TikTok on that phone device.

Removal from the app store also means no more updates. As Apple and Google roll out OS updates, they can invalidate TikTok’s functionality. An OS update can see a small banner pop up that says something similar to “This app is no longer compatible with this device” and prevent it from launching. The only option the user has at that point is to delete the app and move onto something else. If you can’t launch the app, then it’s useless.

This step, by far, is the simplest step to banning an app. It only requires two touch points: Apple and Google. That also assumes that both Apple and Google would be willing participants in this action. They may not. If they choose to challenge Trump’s legal authority to request such actions.. that leads me into the second half of this article.

Legal Authority

I guess the biggest question on people’s mind is, “Does Donald Trump have the authority to ban an app like TikTok within the US?” The short answer is, “I’m not sure”. Trump’s executive authority powers do allow him to write and execute executive orders.

Wikipedia states of Presidential Executive Orders:

Article Two of the United States Constitution gives the president broad executive and enforcement authority to use their discretion to determine how to enforce the law or to otherwise manage the resources and staff of the executive branch. The ability to make such orders is also based on express or implied Acts of Congress that delegate to the President some degree of discretionary power (delegated legislation).

the Wikipedia article further goes on to state:

Like both legislative statutes and regulations promulgated by government agencies, executive orders are subject to judicial review and may be overturned if the orders lack support by statute or the Constitution.

That means that an Executive Order can be challenged via judicial review and may be overturned if unconstitutional or lacks support by statute. And, lacking support by statute may be Trump’s biggest hurdle.

However, the Patriot Act gives the government and, in general, the President broad powers with regards to national security. If he deems TikTok a threat to national security and deems it illegal surveillance, it may invoke clauses under the Patriot Act which would allow him to write an Executive Order supported by the Patriot Act.

Yes, this is all convoluted and tenuously threaded, but it may have enough binding weight to hold together under scrutiny via judicial review.

That’s not say that TikTok is in any way performing surveillance via its app. But, seeing that it was an app developed in China, it is entirely possible that it does contain illegal surveillance mechanisms, otherwise known as spyware.

TikTok as an App

TikTok may seem an innocuous app on the surface. You use it to create a funny small video clippets (ha, just coined a new term) and then upload it for all to see. What you don’t know is whether this seeming innocuous app is spying on you when you’re not using it. You must give this app permissions to your microphone, camera, location and possibly other access. The app can turn on these devices at any time it so chooses, even if when you’re unaware. If you have given any other access permissions, such as access to your Photo Gallery, Clipboard, Contacts or other points of permission, it may have blanket access to far too much private information about you that it can feed to China.

Even if you have installed TikTok once, that data may have been shared back to someone in China. You have no idea exactly what this app is doing under-the-hood. The same can be said of many apps in the app store. However, China is under no obligation to uphold data privacy laws in the United States. If your child has installed the app, it could feed all manner of private data about your child back to China.

U.S. Company?

TikTok apparently has a U.S. presence, but if that presence doesn’t have a hand in the creation, maintenance or dissemination of the app itself, the U.S. arm may not be violating any laws if the app does unsavory things outside of its stated and intended purpose.

Even though it seems TikTok does have a U.S. presence, the company itself seems to be heavily backed by Chinese companies. Since the President’s announcement regarding a potential TikTok ban, this company has quickly attempted to divest its Chinese interest from TikTok and allow it to become a wholly owned and operated U.S. business. That may be too late for this company and this app.

Honestly, sharing tiny entertaining videos of your silly antics is really not an essential part life. It’s fun to watch, but it’s overall something to be watched and forgotten. In other words, none of the content on TikTok is in any way meaningful or, indeed, useful. It is briefly funny content that might elicit a few laughs and then you are encouraged to move on to the next.

What Wish is to trashy Chinese merchandise, TikTok is to trashy occasionally funny clippets. They’re both cut from the same cloth, but cut from different ends. I’ve watched many TikTok videos and I find most of them no more entertaining than watching a TV commercial. TV commercials are, in fact, better filmed and many times better written.

Ultimately, if TikTok is banned, it won’t be missed in the long run. Oh, it will be immediately missed by the tweens and teens alike who rely on that sort of thing to get through the boredom of their day, but even this age group will quickly forget and move onto the next app.

TikTok is ultimately another social media fad riding a temporary wave that will eventually surf its way into the next app fad, and far away from TikTok. A Presidential ban may simply speed this process up exponentially and cut short TikTok as a fad.

↩︎

Patent Trolls or why software patents should be abolished!

Posted in business, free enterprise, politics by commorancy on May 21, 2011

The patent system was originally designed to provide exclusive rights for invented ideas to inventors. But, there used to be a catch, the idea must lead to a real world tangible device. The patent system was also conceived long before computers existed. So, at the time when the patent system was conceived, it was designed as a way for inventors to retain exclusive control over their ideas for tangible devices without other people stealing or profiting from those ideas.

The patent system is enforced by the legal system. It is sanctioned by governments (specifically in the US, by the US Patent Office – USPTO and the legislative system) to protect said individuals’ patents from use by others who serve to profit from those previously ‘patented’ ideas. So, enforcing a patent involves suing an alleged infringer and then having a court of law rule whether the alleged infringer has, in fact, infringed. It is, then, the burden of proof of the patent holder to prove infringement.  And, of course, it ties up the legal system to resolve this dispute.

Tangible vs Intangible Devices

The patent system was conceived at a time when the ultimate outcome of a patent idea was to produce a tangible physical good. That is, something that ultimately exists in the real world like a pen, a toaster, a drill, a telephone or a light bulb. The patented idea itself is not tangible, but the idea described within the patent should ultimately produce a tangible real world item if actually built. This is why ideas that lead to intangible things were never allowed to be patented and are only allowed to be copyrighted or trademarked.

Fast forward to when the first computers came into existence (30s-60s). Then later, the 70s when the US Patent Office began granting software patents en masse (although, the first software patent was apparently granted in 1966). Software, unfortunately, is not a tangible thing and, for the most part, is simply a set of ideas expressed through a ‘programming language’ with finite constructs. Modern programming languages, specifically, are designed to have limited constructs to produce a structured code. That is, an application that follows a specific set of pre-built rules to basically take data in and present data out (in specific unique ways).  Ultimately, that’s what a program does, take data in, process it and spit data out in a new way.

Software Design Limits

Because modern programming languages have limited constructs from which to build an application and which are further constrained by such limits as application programming interface (API) frameworks, operating system function calls, hardware limitations and other such constraints, writing an application becomes an exercise in compromise. That is, you must compromise programming flexibility for the ease and speed of using someone else’s API framework. Of course, you can write anything you want from scratch if you really want, but most people choose to use pre-existing frameworks to speed the development process.  Using external frameworks also reduce time to completion of a project. At the same time, including third party API systems is not without its share of coding and legal issues. Programmatically speaking, using a third party API opens up your code to security problems and puts implicit trust into that API that it’s ‘doing the right thing’. Clearly, the functionality derived from the external framework may outweigh the security dangers present within the framework. From a legal perspective, you also don’t know what legal traps your application may fall into as a result of using someone else’s API framework. If they used code within the framework that is legally questionable, that will also bring your application into question because you used that framework inside your app (unless, of course, it’s using a SOAP/REST internet framework).

With all that said, embedding frameworks in your app severely constricts your ability to control what your program is doing. Worse, though, if you are using a high level programming language like C, C++, Objective C, C# or any other high level language, you are limited by that programming language’s built-in construct. So, even if you choose to code everything from scratch, it’s very likely you could write code substantially similar to something that someone else has already written. Because high level languages have limited constructs, there are only so many ways to build an application that, for example, extracts data from a database. So, you have to follow the same conventions as everyone else to accomplish this same task.

Software Patents are bad

Because of these limited high level language constructs, there is a high probability that someone writing an application will write code that has already been written hundreds of times before. And note, that’s not an accident. That happens because do()while, for() and while() loops as well as if conditionals area always used in the same way. Worse, you can’t deviate from these language constructs because they are always the same in pretty much any language.  If these constructs didn’t exist, you couldn’t easily make decisions within your code (ie, if X is greater than 3, do this, else do that).

Why are software patents bad? Simply, because languages are written with such limited programming concepts, the probability to reinvent something that has already been invented is far too high. Unlike devising a real world idea where the probability someone could come up with that same exact idea is likely near zero, writing software using language constructs the probability is far higher than 70% that someone could design the same (or substantially similar) code, idea or construct. And. that high probability is strictly because of the limits and constructs imposed by the high level language.

Yet, the USPTO has decided to allow and grant software patents knowing the probabilities of creating substantially similar ideas within the software world is that high. Yes, probabilities should play a part in whether or not to grant patents.

Probabilities

Probability in idea creation is (and should always be considered) how likely someone is to create something substantially similar to someone else. Probability should always be relevant in granting patents. Patents need to be unique and individual. That is, a patent should be granted based on something that multiple people could not devise, guess, build or otherwise conceive accidentally. Because real world tangible items are constrained only by the elements here on Earth, this effectively makes inventions using Earth elements pretty much infinite (at least for all intents and purposes). Because software code uses a much smaller number of constructs that limit and constrain programming efforts, that smaller set increases the chances and the probabilities that someone can create something similar.  In fact, it increases probabilities by orders of magnitudes. I’m sure an expert on statistics and probabilities could even come up with real world probability numbers between element based inventions and software code based inventions. Suffice it to say, even without this analysis, it’s quite clear that it’s far too easy for someone to devise something substantially similar in software without even really trying.

Software patents are bad, revisited

Basically, it’s far too easy for someone to devise something someone else has already conceived using software. On top of this, the USPTO has seen fit to grant software patents that are way too obvious anyway. That is, they’ve granted patents to software ideas that are similarly as common place as cotton, strawberries, a nail and yarn. Worse, because of these completely obvious patents, patent trolls (people who do nothing but patent without the intent of producing anything) game the system and produce completely obvious patents. This action has created a land mine situation for the software industry.  This is especially bad because it’s virtually impossible to search for existing patents before writing software.

So, as a software developer, you never know when you might step on one of these land mines and get a ‘cease and desist’ notification from a patent troll. That is, someone who has patented some tiny little thing that’s completely obvious, yet your application takes advantage of that thing somewhere because you just happened upon one of the easy to build constructs in a language. Yet, patents should only be granted based on an idea that someone cannot easily create by sheer accident. Yet, here we are.

Ideas now patented

Worse, software is not and has never been tangible. That is, software doesn’t and cannot exist in the real world. Yes, software exists on real world devices, but that software itself is just a series of bits in a storage device. It is not real and will never be real or ever see the light of day. That is, software is just an idea. An idea with a structured format. It is not real and will never have a real tangible physical shape, like a toaster. We will never be able to have tactile interaction with software. Hardware, yes, is tactile. Software, no. The software’s running code itself cannot stimulate any of our five senses: not sight, hearing, touch, smell and taste.. Someone might argue, well software does produce visual and audible interaction. Yes, the output of the software produces these interactions. That is, the software processes the input data and produces output data. The input and output data has sight and sound interaction. You still aren’t seeing or hearing the software code doing the processing. That’s under the hood and cannot be experienced by our five senses. For this reason, software is strictly an idea, a construct. It is not a tangible good.

Patents are a form of personal law

That is, the owner of the patent now has a legal ‘law’ that they need to personally enforce.  That is, that patent number gives them the right to take anyone to court to enforce their ‘law’ err.. patent.  No entity in government should be allowed to grant personal law.  Especially not for intangible things.  I can understand granting patents on tangible items (a specialty hair clip, a curling iron, a new type of pen, etc).  That makes sense and it’s easy to see infringement as you can see and touch the fake.  It takes effort, time and money to produce such a tangible item. Software patents require nothing.  Just an application to the USPTO, a payment and then wait for it to be granted.  After the patent has been granted, take people to court, win and wait for royalties.  This is wrong.

All software patents should be immediately abolished and invalidated

Why?

  • Software patents only serve corporations in money making ventures. Yet, software patents really serve to bog down the legal system with unnecessary actions.
  • Software patents stifle innovation due to ‘land mines’. Many would-be developers steer clear of writing any code for fear of the legal traps.
  • Software patents are granted based on probabilities far too high that someone will produce something similar based on limited high level language constructs
  • Because software language constructs are, by comparison, much smaller in number when compared to Earth elements (when inventing real world ideas), probabilities say it’s too easy to recreate something substantially similar to someone else in software.
  • Software is intangible and cannot expose itself as anything tangible (which goes against the original idea of patents in the first place)
  • Software patents will reach critical mass.  Eventually, the only people left writing code will be large corporations who can afford to defend against legal traps.
  • Software patents are now being granted without regards to obviousness.

As a result, all software patents, past and present, should be immediately invalidated.  If we continue this path of software patents, a critical mass will eventually exist such that writing software will become such a legal landmine that developers will simply stop developing.  I believe we’ve already seen the beginnings of this. Eventually, the only people left who can afford to develop software will be large corporations with deep pockets.  Effectively, software patents will stifle innovation to the point that small developers will no longer be able to legally defend against the Patent Trolls and large corporations seeking to make money off ‘licensing’. The patent system needs to go back to a time when the only patents granted were patents describing tangible physical goods. Patents that do not describe tangible physical goods should be considered ideas and dumped under copyright law only.

Is Obama hostile towards big business?

To answer this question, we need to delve a little deeper. Note, I am neither condoning nor praising Obama’s handling of his regulatory efforts. However, I would like to point out certain corrections that do need to be made.

“The truth is that not even the Franklin Roosevelt administration was as hostile to and ignorant about free enterprise as this [Obama’s] administration is.”
–Steve Forbes.

But, is Obama really hostile towards business? Or, is he making needed corrections? There is a fine line here. This issue also points out a serious problem in politics today. That problem is, you guessed it, money. Without money, the world doesn’t work. Without money, candidates don’t get elected. Without money, businesses don’t sell things and make money. Back up the train.. Businesses make plenty of money without governmental help. The trouble is that businesses want to be able to make laws that enable their businesses to make more money and then have the government be lenient with them when issues arise.

The reality, though, is that like the separation of church and state, the government now needs separation of business and state. The two are oil and water, they don’t mix. Government needs to be able to make law without interference from any party. But, businesses have deep pockets and hefty lawyers. These two elements help elect officials and help sway these same officials into making good on promises they made towards these businesses during the election.

Obama’s corrections

While I don’t agree with every single thing Obama has done, I do agree that change is necessary. The change that he is making is intended to correct the issues that led to the economic downturn. The trouble comes with statements from people like Steve Forbes. Mr. Forbes believes that he is the end-all-be-all-know-it-all when it comes to all-things-business. The trouble is, he doesn’t. Yes, he runs a successful magazine, but that doesn’t make him an authority. That makes him a successful business owner.

Obama is walking that fine line. A fine line that shouldn’t even be necessary. But, there it is. The line that’s there to help Obama help the economy, help spur business and growth and reduce the chances of a repeated failure. At the same time, the line is there to show that government values business, but isn’t there to socialize it. The trouble is, this economic downturn was of our own making. By our, I mean Wall Street. The housing bubble was just that, a bubble. Bubbles eventually burst and this bubble was no exception. It’s not as if analysts and intelligent minded people couldn’t see the handwriting on the wall. When the mortgage interest rates got down to 1% and all of those ARM and specialty loans were being issued like water flowing down the Mississippi, trouble was inevitable. We just didn’t know that banks and insurance companies were tying their financial soundness to these extremely risky loans using credit default swaps.

Until the bubble burst, no one really knew just how deep the rabbit hole went. Then, everything came crashing down and all of the nasty subprime mortgage and credit default swap issues came into view in their all fugly detailed glory. The first evidence of that was Bear Stearns followed by AIG (and the subsequent governmental bailout). I still think they should have let AIG fold, I digress.

Government and Business

It’s high time that government distanced itself from corporate businesses. It’s high time congress made laws to separate government from business (including political support). It’s high time that government stopped being a pawn for corporate businesses. Forbes clearly seems to think that Free Enterprise requires socialism to function. Free Enterprise is not part of and does not need socialism. Free Enterprise means that businesses can do whatever they need to do (within the limits of the laws) to make their business succeed. Clearly, there have not been laws enabled that have dramatically impacted Free Enterprise. The laws that have been enacted have been placed there to prevent corporations from producing risky investment vehicles with a high likelyhood of crashing down again. If businesses are now floundering, it’s not because of laws. It’s because corporations have lost their way and are still expecting handouts. Well, you can keep your hand out, but don’t expect the government to be dropping any coin in it.

Corporations have relied, no… depended on the US Government for handouts. That time needs to end. Subsidies for business need to go away. Businesses need to fend for themselves just like Free Enterprise mandates. If a business can’t make it on its own, then let it fail. I’ll repeat, LET IT FAIL. Failure is also part of Free Enterprise. Businesses that will succeed, will succeed because they produce a good product or service. Businesses that fail, will fail because they don’t produce good products or services.

Lost our way

America, and specifically corporate enterprises, have lost their way. For far too long have big corporations depended on favorable governmental conditions (sounds like a weather report) to help them stay in business. Well, that train has left (and must leave). It should be solely up to you and your business practices alone to make or break your company. It is the quality of your products, services and support that makes people want to buy your products or invest in your company. Nothing has changed about this aspect of Free Enterprise.

We need to go back to a time when quality was the key. When providing a superior product was the answer to getting people to buy things. If that also means deflation, then so be it. Businesses need to find their way by learning how to do more with less. How to manage their staff better and stop over-hiring. At the same time, many of them need to stop under-hiring and also value the employees that they have right now.

The key to keeping your business flowing is by keeping your employees active, productive and happy. Morale is a big problem in companies during any downturn. Once fear sets in over the next reduction in force (RIF), then morale falls to all-time-lows. No, taking the employees on an outing doesn’t boost morale. The way to boost morale is to stop RIFing the staff out the door. Yes, I know it gives a temporary boost to the stock price and makes the shareholders happy, but that’s a temporary fix with limited effects. Once the dust settles, the employees who are left become disgruntled, unhappy and produce less. This is completely backwards thinking. Which is why business has lost its way.

Shareholder value vs quality products

I know, someone’s going to say that it is all about ‘shareholder value’. That may be the way things seem now, but it is wrong. Currently accepted actions that lead to improved shareholder value tend to undercut production, stifle innovation, reduce profit margins and lower productivity. Why would you intentionally do this to your business? So, while these measures may seem to help the stock price, it does nothing to help the company improve its quality of products and services. In fact, in the long run, these actions almost always negatively impact the bottom line. So, the fundamental question is, are you in business to make the shareholders happy or are you in business to sell quality products and services? This fundamental question must be answered.

The true answer to this question also shows that Free Enterprise priorities today are all wrong. It used to be that the customer is #1. Now, shareholders are #1 and customers are #2. This is both wrong and stupid. Until businesses go back to the idea that the customer is #1, corporations will continue to fail and need governmental subsidies. While shareholders are considered #1, there is really no such thing as Free Enterprise when it comes to multi-million dollar corporations… which is why they always need a handout from the government.

%d bloggers like this: