Deal: Razer throws in a free Leviathan Mini if you buy the Razer Phone

Available since November, Razer doesn’t appear ready to discount its flagship Razer Phone just yet. What the company is ready to do, however, is throw in one of its Bluetooth speakers for free if you buy its smartphone.

For 48 hours, if you pick up the $700 Razer Phone through the company’s website, you can get its Leviathan Mini Bluetooth speaker for free. Reported by PhoneArena, just make sure to use the promo code PHLVLUP (get it?) at checkout and you won’t pay a dime for the speaker.

I can’t personally attest to the quality of the Leviathan Mini. What I can say, however, is that it originally goes for $180 and was recently discounted to $100 for the holidays. The speaker also sports NFC for quick pairing and is roughly the same size as the popular UE Boom 2, though the Leviathan Mini doesn’t share the latter’s rugged protection. In other words, Razer’s speaker was not built to withstand water, dust, and drops — it’s a speaker meant for the table, not for the outside.

As for the Razer Phone itself, we thought it was a great first effort from Razer. It may not have adopted the near bezel-less design of some of its contemporaries, but the Razer Phone manages to still look unique, thanks to its dark aluminum build and dual speakers that crank out great sound.

Editor’s Pick

Also, we can’t talk about the Razer Phone without talking about its Quad HD display, which is capable of up to a 120 Hz refresh rate. This gives the phone a sense of fluidity and smoothness that only Google’s Pixel 2 and Pixel 2 XL can rival.

The Razer Phone isn’t without its hiccups, however. The display might lend the software a great amount of fluidity, but we found it a bit too dim for our liking. Also, even though our terrible photography experience has improved a bit with software updates, the images still aren’t that great. Finally, even though a dongle is included in the box, you will not find a headphone jack.

With that being said, we would not blame you if you pick up the Razer Phone, so why not do so while getting a Bluetooth speaker for free. You have until the end of tomorrow, December 19 to take advantage of the promotion at the link below.

Get the Razer Phone

Destiny 2 for $12

Some time ago I subscribed to the Humble Bundle Monthly to get Civ VI for $12. After one three-month subscription I unsubscribed, because I didn’t like the other games I got in the bundles. But if you subscribe now, you get Destiny 2 for $12 plus whatever other games will be in the bundle in June, so I subscribed again. For just one month this time. In short, I still don’t like the bundles, but I’m willing to buy one of them here and there if the headline game it has is well worth $12.

I got Destiny 1 for free on the PS3 and liked it. It is shooter meets Diablo with a bit of MMORPG mixed in. On the PC Destiny 2 isn’t on Steam, but only available via the Blizzard / Activision Battle.net. Where it costs $60, although you can get it a lot cheaper from various key resellers. For a game that was only released last October and got a 83 Metacritic score, $12 is good value for money.

World of Warcraft today

I got a “gift” from Blizzard, 7 days of free subscription to WoW. Not that I would have needed it, I still have several tokens I could exchange for game time. But it did what it was supposed to do, prompt me to update the client and play World of Warcraft for an hour or so. Unfortunately for Blizzard that didn’t get me hooked again. Instead I got rather bored with running errands, aka quests, and logged out again.

One major difficulty I have with World of Warcraft is that the buttons I have for each character have changed so often over the life of this game. Which means that even on my main character which I have played literally for thousands of hours I can’t remember the optimum sequence of button presses after a year and a half of not playing the game. That doesn’t appear to matter for quests, I can do those with just randomly mashing buttons, but it is a serious barrier to re-entry if I wanted to play again.

The next thing that hit me was getting billions of artifact points thrown at me for doing not much. It basically made all the effort I had previously put into artifact weapons seem pointless. On the other hand, I had stopped playing with only part 1 of the achievement necessary for flying done, and it turns out that part 2 still needs weeks of grinding to get to. No thanks!

In summary, World of Warcraft has changed the details frequently (which makes it hard to remember how to play well), while not changing the basic structure of the game enough (which makes it hard to find a renewed interest in playing). I still don’t think I will buy the next expansion, Battle for Azeroth.

Galaxy S8’s fourth Android Oreo beta disables use of third-party docks with Samsung DeX

The Galaxy S8 and S8 Plus might be more known for their near bezel-less designs, but one feature that isn’t nearly as talked about is Samsung DeX, which turns the phone into pseudo-desktops. Unfortunately for those who found the feature useful, the fourth Android Oreo beta prevents it from working with third-party docks.

According to XDA Developers, users are reporting that, when they connect their devices to third-party docks, Samsung DeX no longer pops up. Instead, connecting their Samsung smartphones to these docks only mirrors the smartphone display.

This is an interesting change, seeing how using Samsung‘s official DeX dock was not the only way to get the feature up and running. For example, back in September, someone turned a 2008 MacBook Pro into an almost fully-functional DeX laptop. Also, folks found out that they could connect the Galaxy S8 to the HP Elitebook X3, which was made to work with HP’s Elite X3 smartphone, and have Samsung DeX work just fine.

Editor’s Pick

It’s a somewhat depressing move on Samsung’s part, seeing how the company has also prevented folks from remapping the Bixby button. I understand that Samsung wants to sell as many DeX docks as possible, but if you want as many people as possible use the feature, why hinder the ability to do so?

XDA Developers brings up the point that Huawei’s Mate 10 and Mate 10 Pro offer a DeX-like feature of their own, except that the phones do not require the use of a dock to make it work — all you need is a USB 3.1 Type-C cable. Maybe we’ll get to the point where Samsung doesn’t require a dock to have DeX work, but until then, I will continue to frown.

Of course, Samsung can change its mind once the final Android Oreo release rolls around, though we’ll keep an eye out if that’s the case.

Do you use Samsung DeX with your Galaxy S8, S8 Plus, or Note 8? If you do, do you find the feature useful? Let us know in the comments below.

About Trees, different Traversals and BST

A tree is a data structure made up of nodes or vertices and edges without having any cycle. The tree with no nodes is called the null or empty tree. A tree that is not empty consists of a root node and potentially many levels of additional nodes that form a hierarchy.

Tree

Tree Terminology

Lets see some tree terminologies:-
Root: The top node in a tree.
Child: A node directly connected to another node when moving away from the Root.
Parent: The converse notion of a child.
Siblings: A group of nodes with the same parent.
Descendant: A node reachable by repeated proceeding from parent to child.
Ancestor: A node reachable by repeated proceeding from child to parent.
Leaf: A node with no children.
Internal node: A node with at least one child.
Degree: The number of sub trees of a node.
Edge: The connection between one node and another.
Path: A sequence of nodes and edges connecting a node with a descendant.
Level: The level of a node is defined by 1 + (the number of connections between the node and the root).
Height of node: The height of a node is the number of edges on the longest path between that node and a leaf.
Height of tree: The height of a tree is the height of its root node.
Depth: The depth of a node is the number of edges from the tree’s root node to the node.
Forest: A forest is a set of n ≥ 0 disjoint trees.

Tree Node

Tree Node has a data part and references to its left and right child nodes.

struct node {
int data;
struct node *leftChild;
struct node *rightChild;
};
In a tree, all nodes share common construct.

Tree Traversals

Traversal is a process to visit all the nodes of a tree and may print their values too. Because, all nodes are connected via edges (links) we always start from the root (head) node. That is, we cannot randomly access a node in a tree. Unlike linear data structures (Array, Linked List, Queues, Stacks, etc) which have only one logical way to traverse them, trees can be traversed in different ways. Following are the generally used ways for traversing trees.

  • In-order Traversal
  • Pre-order Traversal
  • Post-order Traversal

In-Order Traversal

In this traversal method we first visit the left sub-tree, then the root and later the right sub-tree. If a binary tree is traversed in-order, the output will produce sorted key values in an ascending order.
For e.g.
Output of the In-Order traversal for above tree is
4 -> 2 -> 5 -> 1 -> 3
Algorithm Inorder(tree)
1. Recursively traverse the left subtree, i.e., call Inorder(left-subtree)
2. Visit the root
3. Recursively traverse the right subtree, i.e., call Inorder(right-subtree)

Pre-Order Traversal

In this traversal method we first visit the root node, then the left sub tree and finally the right sub-tree.
For e.g.
Output of the In-Order traversal for above tree is 
1-> 2 -> 4 -> 5 -> 3
Algorithm Preorder(tree)
1. Visit the root.
2. Recursively traverse the left subtree, i.e., call Preorder(left-subtree)
3. Recursively traverse the right subtree, i.e., call Preorder(right-subtree)

Post-Order Traversal

In this traversal method we first visit the left sub tree, then the right sub-tree and finally the root node.
For e.g.
Output of the In-Order traversal for above tree is 
4-> 5 -> 2 -> 3 -> 1
Algorithm Postorder(tree)
1. Recursively traverse the left subtree, i.e., call Postorder(left-subtree)
2. Recursively traverse the right subtree, i.e., call Postorder(right-subtree)
3. Visit the root

Binary Search Tree(BST)

In binary tree, every node can have maximum two children but there is no order of nodes based on their values. Binary search tree is a type of binary tree in which all the nodes in left subtree of any node contains smaller values and all the nodes in right sub-tree of that contains larger values as shown in following figure

Operations on a Binary Search Tree

Following Oprations performed on BST
1. Search
2. Insertion
3. Deletion

Search Operation

Whenever an element is to be searched, start searching from the root node. Then if the data is less than the key value, search for the element in the left subtree. Otherwise, search for the element in the right subtree. Follow the same algorithm for each node.
Algorithm
node* search(int data){
struct node *current = root;
printf("Visiting elements: ");
while(current->data != data){
if(current != NULL) {
printf("%d ",current->data);
//go to left tree
if(current->data > data){
current = current->leftChild;
}//else go to right tree
else {
current = current->rightChild;
}
//not found
if(current == NULL){
return NULL;
}
}
}
return current;
}

Insert Operation

Whenever an element is to be inserted, first locate its proper location. Start searching from the root node, then if the data is less than the key value, search for the empty location in the left subtree and insert the data. Otherwise, search for the empty location in the right subtree and insert the data.
Algorithm
Node * Insert(Node * root, int data)
{
if(root == nullptr)
{
Node * NN = new Node();
root = NN;
root->data = data;
root->left = root ->right = NULL;
}
else
{
if(data < root->data)
{
root->left = Insert(root->left, data);
}
else
{
root->right = Insert(root->right, data);
}
}
return root;
}

Deletion Operation in BST

In a binary search tree, the deletion operation is performed with O(log n) time complexity. Deleting a node from Binary search tree has following three cases:-
Case 1: Deleting a Leaf node (A node with no children)
Step 1: Find the node to be deleted using search operation
Step 2: Delete the node using free function (If it is a leaf) and terminate the function.
Case 2: Deleting a node with one child
Step 1: Find the node to be deleted using search operation
Step 2: If it has only one child, then create a link between its parent and child nodes.
Step 3: Delete the node using free function and terminate the function.
Case 3: Deleting a node with two children
Step 1: Find the node to be deleted using search operation
Step 2: If it has two children, then find the largest node in its left subtree (OR) the smallest node in its right subtree.
Step 3: Swap both deleting node and node which found in above step.
Step 4: Then, check whether deleting node came to case 1 or case 2 else goto steps 2
Step 5: If it comes to case 1, then delete using case 1 logic.
Step 6: If it comes to case 2, then delete using case 2 logic.
Step 7: Repeat the same process until node is deleted from the tree.

Do you want to learn Java Programming?

Elemental Evil: Session 9

In the previous session the group arrived at the base of Feathergale Spire. As Princes of the Apocalypse is designed as a sandbox adventure and doesn’t have a linear story-line and “quests” leading people to the next goal, this session started with a discussion between the players on what exactly they were looking for in Feathergale Spire. The one point where they could all agree upon was that they were looking for Glasstaff, the evil mage from the previous adventure, who had escaped them but left a letter indicating he could be found in this tower. Landry the halfling monk also had a larger view on fighting the evil elemental cults as a goal, while Theren the elf warrior was especially interested in finding the keys to magical portal they had found in the previous session.

With the help of their Aarakocra allies the group ascended the pillar to the base of the tower, one level below the main entrance with the drawbridge. Here they found 12 large stable doors, with signs that this was were the flying mounts were kept. Listening to the doors they found an unoccupied stable and entered there. Another door led to the central staircase of the tower, but one of the Feathergale Knights was in that room. The group managed to jump him with surprise, and kill him before he could raise the alarm.

Going up the staircase they found that at each level there was a central room with doors to the other rooms of the level. They decided to skip all those doors, and just continue to go up. That worked well, because I played the tower as written, with there not being any guards on the staircase. So the group arrived just below the top level, seeing open sky above them. Landry decided to sneak a peek to see who or what was on the top landing. However he miserably failed his stealth check, and was seen by Glasstaff, who fired a magic missile at him. That started a fight, with the enemy consisting of the mage, two Feathergale Knights on giant vultures, and Thurl Merosska.

The group concentrated on Glasstaff, killing him before he got another spell off (I should have let him cast Shield as a reaction on the first attack, but forgot about that). Then Theren wanted to call a truce, persuading Thurl that they only were here because of a previous beef with Glasstaff, which he assumed to be the boss of the tower. However it turned out that Thurl was the boss, and Glasstaff his invited guest, so the group reconsidered the truce idea and the fight continued.

That fight turned out to be tough. In fact the book says Feathergale Spire could be handled at level 3, and they had a hard time at level 4. I guess the book assumes that the players don’t actually fight the air cult, because there is an option of joining them on a hunt instead and then sending them off against the rival earth cult. As an alternative the book describes the group being captured and thrown off the tower, but then being rescued by the Aarakocra. As I had played up the fight against the evil elemental cults and the information the players got on them, as opposed to the “players are in the dark about what is going on while searching for a missing delegation” story of the book, and as I had added Glasstaff to the tower, the peaceful option was a lot less likely.

Fortunately it all ended well: The group defeated Thurl and his knights on the pinnacle. They got the mage’s glass staff of defense [DM’s note: I changed that one to be able to cast Shield as a reaction, not only as an action, which would have made the spell rather useless.], they got one of the four needed keys to the magic portal from Thurl, and they used the Wing Wear wondrous item they had found in the stables to paraglide down from the top of the tower before further inhabitants of the tower stormed up the stairs. So apart from them not getting the xp for having killed everybody (which would have been very difficult) they achieved a near perfect outcome.

The group returned via the Sighing Valley to Red Larch and rested over night. Then they discussed where to go next. From Popée’s Zhentarim contact, the town baker, they got the information that the warrior in stone armor they had found in one of the four graves was presumably an earth cultist. From the dwarven book from the previous adventure they had a rough idea where the four Haunted Keeps were, and the baker told them about the Sacred Stone Monastery. They also learned about the existence of Rivergard Keep, and the information they had from Landry’s Order of the Gauntlet contact suggested that this might be where the water cultists were hiding out. That seemed to be a good next target, but as it was getting late we ended the session there.

Common HTTP Errors

Every HTTP transaction has a status code sent back by the server to define how the server handled the transaction.
Apart from the 404 error, how many other HTML error pages do you know about? Have you ever thought about what happens in the background when you see any of these HTML error pages on your screen?
Those codes are meant to convey important information to the user. Using them properly reduces your bounce rate, improves your search engine ranking and gives you knowledge on the performance of your site.

Status Codes

Status codes come in the format of 3 digit numbers. The first digit marks the class of the status code:
1XX status codes have informational purposes
2XX indicates success
3XX is for redirection
None of these three classes result in an HTML error page as in this cases the client knows what to do and goes on with the task without hesitation. 

What we usually see are the 4XX and 5XX kind:

4XX represent client-side errors
5XX indicate problems on the server side
HTML error pages are displayed in these cases because the client has no idea about what how to move on.

Lets see some Client side and Server side HTTP error codes

Client Side Errors(4XX)

400 – Bad Request

Whenever the client sends a request the server is unable to understand, the 400 Bad Request error page shows up. It usually happens when the data sent by the browser doesn’t respect the rules of the HTTP protocol, so the web server is clueless about how to process a request containing a malformed syntax.

Open the same webpage in a different browser, clear the cache, and check if you are due with security updates. If you regularly meet the 400 error on different sites, your PC or Mac is awaiting a thorough security checkup.

401 – Authorization Required

When there’s a password-protected webpage behind the client’s request, the server responds with a 401 Authorization Required code. 401 doesn’t return a classical error message at once, but a popup that asks the user to provide a login-password combination.

403 – Forbidden

The server understood the request, but is refusing to fulfill it. Authorization will not help and the request SHOULD NOT be repeated.By returning the 403 status code the server basically rejects the client with a big loud “No” without any explanation.
The most common reason is that the website owner doesn’t permit visitors to browse the file directory structure of the site.

404 – Not Found


The server has not found anything matching the Request-URI. No indication is given of whether the condition is temporary or permanent.

408 – Request Time-Out

When the request of the client takes too long, the server times out, closes the connection, and the browser displays a 408 Request Time-Out error message. The time-out happens because the server didn’t receive a complete request from the client within the time frame it was prepared to wait.

410 – Gone

The requested resource is no longer available at the server and no forwarding address is known. This condition is expected to be considered permanent. Clients with link editing capabilities SHOULD delete references to the Request-URI after user approval.

If the server does not know, or has no facility to determine, whether or not the condition is permanent, the status code 404 Not Found SHOULD be used instead. This response is cacheable unless indicated otherwise. It’s a good idea to distinguish between 404 and 410 to enhance your Google-friendliness. 

Server Side Errors

500 – Internal Server Error

The server encountered an unexpected condition which prevented it from fulfilling the request.
If you encounter the 500 error page on your own site, it will be wise to contact your hosting provider. The reason is most likely a permission error, a corrupt .htaccess file or a too low memory limit.

502 – Bad Gateway

The 502 error message represents a communication problem between two servers. It occurs when the client connects to a server acting as a gateway or a proxy that needs to access an upstream server that provides additional service to it.

503 – Service Unavailable

Your web server is unable to handle your HTTP request at the time. There are a myriad of reasons why this can occur but the most common are:

  • server crash
  • server maintenance
  • server overload
  • server maliciously being attacked
  • a website has used up its allotted bandwidth
  • server may be forbidden to return the requested document
  • This is usually a temporary condition. Since you are getting a return code, part of the server is working. The web people have made the server return this code until they fix the problem.

If you do not get service back soon, contact your web host as they would know the best. Some web hosts have server status pages you can check.

504 – Gateway Time-Out

There is a server-server communication problem behind the Gateway Time-Out error message, just like behind the 502 Bad Gateway error code. When the 504 status code is returned there’s also a higher-level server in the background that is supposed to send data to the server that is connected to our client. In this case the lower-level server doesn’t receive a timely response from the upstream server it accessed.

Want to learn Web Programming?

Combat optional

One of the comments on my previous post on Zelda about combat feeling optional got me thinking. Role-playing games evolved from war games: The full name of TSR, the company that first made Dungeons & Dragons, was “Tactical Studies Rules”; and the game evolved out of a squad-based war game with heroes fighting monsters. Since then combat against monsters has been very much at the heart of role-playing games of all sorts. Frequently you gained experience points, and thus levels, and thus power, by killing monsters. In MMORPGs that even led to players thinking about monsters as being a resource, with other players being a nuisance for “killstealing” or otherwise taking that monster resource away from you.

In Zelda – Breath of the Wild the monster is back where it belongs: In the role of an obstacle. There are no xp to gain, killing monsters doesn’t increase your power. Yes, you might earn a nice weapon in a treasure, but you could also break your weapon while killing the monsters and then find a worse replacement in their treasure chest. Monsters drop monster parts, which can be combined with stuff like insects to cook elixirs (which sell for much more than the monster parts). There is even a special trader in the game that allows you to trade monster parts for another currency with which you can buy special items like monster disguises. But in the long run, killing monsters frequently just isn’t worth it. When exploring in the mountains and getting attacked by a monster, I’d try to punt it over a ledge and got rid of it, even if that meant I wouldn’t loot it.

Combat isn’t completely optional however. At the very least you will need to kill 5 different incarnations of Ganon, the big evil guy, before reaching the closing credits. If you want to do all shrines, about 10% of them consist of a combat trial, and some others have lesser guardian monsters mixed with puzzles. You might also want at some point in time farm certain monster parts to upgrade armor with. But what I like is that you can wander the landscape and decide to circumvent a monster camp if you don’t feel like attacking it. Because you don’t have to fight everything.

NY Times Frets About Russian Propaganda, Ignores the Massive Troll Farms Run By America and Its Allies

Social media manipulation is a major problem in urgent need of robust discussion

An op-ed by the president of the right-wing human rights group Freedom House, published in the New York Times Monday (12/11/17)—later boosted by New York Times chief White House correspondent Peter Baker—warned of the menace of “commentators, trolls, bots, false news sites and propaganda,” and their negative effects on democracy. Missing from its analysis was any account of how the government that funds their organization—86 percent of Freedom House’s budget comes from the US government, primarily the State Department and USAID—uses social media to stir unrest and undermine governments worldwide.

What the reader was left with was a very selective, curated impression that online social media manipulation is something done exclusively by brown and black people and those dastardly Slavs. The column condemns “surreptitious techniques pioneered in Moscow and Beijing to use the internet to drown out dissent and undermine free elections,” going on to cite online skullduggery in the Philippines, Kenya, Turkey, Mexico and Iran.

Missing from the piece by Freedom House’s Michael Abramowitz is any mention—much less discussion—of numerous reports detailing online manipulation by US and allied governments and Western PR firms.

No mention of the Defense Department’s $100 million program Operation Earnest Voice software that “creates fake online identities to spread pro-American propaganda.” No mention of the US Air Force’s 2010 solicitation of “persona management” software designed to create hundreds of sock puppets, “replete with background, history, supporting details and cyber presences that are technically, culturally and geographically consistent.” No mention of USAID (the same government agency, incidentally, that funds Freedom House) secretly creating an entire social media platform to “stir unrest” in Cuba. No mention of the US State Department’s newly-created $160 million Global Engagement Center, targeting English-language audiences with unattributed Facebookvideos combating, in part, “Russia propaganda.”

Nor was there mention of the UK’s “team of Facebook warriors,” “skilled in psychological operations and use of social media to engage in unconventional warfare in the information age.” Or reference to the half-dozen reports of Israeli troll farms promoting pro-Israel propaganda online.

Though the op-ed had a particular focus on “governing parties” using covert online tools to “inflate their popular support and essentially endorse themselves”—warning that this “devastating new threat to democracy” is used to “undermine elections, political debate and virtually every other aspect of governing”—there was no acknowledgement of the fact that the Hillary Clinton campaign spent $1 million in the 2016 primary to promote its candidate using unattributed social media personas. Nor was there mention of a torrent of pro-Trump bots that infected the 2016 campaign on social media.

None of this merits mention, much less investigation. Instead, the piece primarily consists of little insight or larger discussion as to the scope of the problem. “The United States and other democracies” are positioned as the victims of online manipulation, never its author. Amidst platitudes about “the future of democracy” and “malevolent actors,” the West’s place as noble defenders of Real Information online is simply taken for granted, with, by implication, their ideological satellites—like Freedom House—as neutral arbiters of what is and isn’t propaganda, never practitioners of propaganda themselves.

The US Department of Defense admitted in 2011 that it runs fake social media accounts in Farsi; the vast majority of Farsi speakers live in Iran. What were these accounts doing? Did they influence any elections there? Does Freedom House ask the question, much less attempt to answer it? Of course not; Iran can only be guilty of “[manipulating] discussions…on social media,” never the victim of it.

Should the New York Times have disclosed that the author of a piece about government propaganda runs a group overwhelmingly funded by the US government? The reader could theoretically do research on their own time to find out who backs the benign-sounding “Freedom House” (who doesn’t love freedom?), but this is a fairly tall order for the average media consumer, doubly so when one considers the whole point of the piece is criticizing unattributed propaganda.

Also missing from Freedom House’s cartoon narrative of Good Western Democracies vs. Bad Governments in the Global South is the issue of sophistication. One of the reasons groups like Freedom House know about clandestine attempts by these governments and affiliated parties to influence online messaging is they’re mostly bad at it. Hacky, easily identifiable bots, sloppy knock-off websites, transparent “fake news.” The software solicited by the US Air Force in 2010, which would allow each user to control up to ten social media personas at once “without fear of being discovered by sophisticated adversaries,” would presumably be much more difficult to detect.

Social media manipulation is a major problem in urgent need of robust discussion. But outlets like the New York Times—and others, such as Buzzfeed—that focus only on attempts by Official US Enemies, and never direct any criticism inwards, aren’t concerned with having an earnest discussion of the problem. They are, instead, using the specter of online manipulation to smear those in bad standing with the US State Department while deflecting any conversation about what the most powerful country in the history of the world may be up to online.

 

Related Stories

  • How the Saudis Escalated Yemen Struggle Beyond All Control
  • How NATO Set the Stage for Open-Air Slave Markets in Libya
  • Michael Flynn’s Indictment Exposes Trump Team’s Collusion With Israel, Not Russia

Robert Reich: American Oligarchs’ Day of Reckoning Is Nigh

The GOP tax bill is a triumph for the 1 percent, but recent election results suggest it won’t last.

 

The Republican tax plan to be voted on this week is likely to pass. “The American people have waited 31 long years to see our broken tax code overhauled,” the leaders of the Koch’s political network insisted in a letter to members of Congress, urging swift approval.

They added that the time had come to put “more money in the pockets of American families.”

Please. The Koch network doesn’t care a fig about the pockets of American families. It cares about the pockets of the Koch network. 

It has poured money into almost every state in an effort to convince Americans that the tax cut will be good for them. Yet most Americans don’t believe it. 

Polls shows only about a third of Americans favor the tax plan. The vast majority feel it’s heavily skewed to the rich and big businesses – which it is.  

In counties that Trump won but Obama carried in 2012, only 17 percent say they expect to pay less in taxes, according to a recent NBC News/Wall Street Journal poll. Another 25 percent say they expected their family would actually pay higher taxes.

Most Americans know that the tax plan is payback for major Republican donors. Gary Cohn, Trump’s lead economic advisor, even conceded in an interview that “the most excited group out there are big CEOs, about our tax plan.”

Republican Rep. Chris Collins admitted “my donors are basically saying, ‘Get it done or don’t ever call me again.’” Senator Lindsey Graham warned that if Republicans failed to pass the tax plan, “the financial contributions will stop.”

By passing it, Republican donors will save billions – paying a lower top tax rate, doubling the amount their heirs can receive tax-free, and treating themselves as “pass-through” businesses able to deduct 20 percent of their income (effectively allowing Trump to cut his tax rate in half, if and when he pays taxes).

They’ll make billions more as their stock portfolios soar because corporate taxes are slashed.

The biggest winners by far will be American oligarchs such as the Koch brothers; Peter Thiel, the Silicon Valley investor; Sheldon Adelson, the Las Vegas casino magnate; Woody Johnson, owner of the New York Jets football team and heir to the Johnson & Johnson fortune; and Carl Icahn, the activist investor.

The oligarchs are the richest of the richest 1 percent. They’ve poured hundreds of millions into the GOP and Trump. Half of all contributions to the first phase of the 2016 election came from just 158 families, along with the companies they own or control.

The giant tax cut has been their core demand from the start. They also want to slash regulations, repeal the Affordable Care Act, and cut everything else government does except for defense – including Medicaid, Medicare, and Social Security.

In return, they have agreed to finance Trump and the GOP, and mount expensive public relations campaigns that magnify their lies.

Trump has fulfilled his end of the bargain. He’s blinded much of his white working-class base to the reality of what’s happening by means of his racist, xenophobic rants and policies. 

The American oligarchs couldn’t care less about what all this will cost America. 

Within their gated estates and private jets, they’re well insulated from the hatefulness and divisiveness, 

They don’t worry about whether Social Security or Medicare will be there for them in their retirement because they’ve put away huge fortunes.

Climate change doesn’t concern them because their estates are fully insured against hurricanes, floods, and wildfires.

They don’t care about public schools because their families don’t attend them. They don’t care about public transportation because they don’t use it. They don’t care about the poor because they don’t see them. 

They don’t worry about the rising budget deficit because they borrow directly from global capital markets. 

Truth to tell, they don’t even care that much about America because their personal and financial interests are global.

They are living in their own separate society, and they want Congress and the President to represent them, not the rest of us.

The Republican Party is their vehicle. Fox News is their voice. Trump is their champion. The new tax plan is their triumph.

But if polls showing most Americans against the tax cut are any guide, that triumph may be short lived. Americans are catching on. 

The recent electoral results in Virginia and Alabama offer further evidence. 

A tidal wave of public loathing is growing across the land – toward Trump, the GOP, and the oligarchs they serve; and to the deception, the wealth, and the power that underlies them.  

That wave could crash in the midterm elections of 2018. If so, the current triumph of the oligarchs will be the start of their undoing.

 

 

 

Related Stories

  • Donald Trump Jr. and Ted Cruz Mock Barack Obama with Bizarre Cookie
  • The One Scenario in Which Trump Would Risk Impeachment and Fire Robert Mueller
  • Sarah Palin’s Son Charged with Burglary and Assault in Domestic Dispute: Report