Hascon

Today Hascon 2017 starts, the convention of Hasbro, one of the world’s largest toy and board game makers. Obviously gamers have little interest in the latest news on My Little Pony or Monopoly, but as Hasbro bought Wizards of the Coast, who previously bought TSR, Hasbro controls two of the biggest names in tabletop gaming: Dungeons & Dragons and Magic the Gathering. But the one reason I am interested in Hascon is the promised reveal of “Magic Digital Next”, the next generation platform for playing Magic the Gathering electronically.

Right now Magic Digital Next doesn’t have a lot of goodwill from the community. Too much went wrong or was badly handled with the previous incarnations like Magic the Gathering Online or Magic Duels. Personally I am still quite angry that Hasbro dropped Magic Duels like a hot potato in June. They should have waited with that until Magic Digital Next is actually available, not 3 months before we get to see the first playable alpha version at a convention. I am also unhappy that they didn’t even make the slightest effort to bring Magic Duels in a state where it would still be viable to play until Magic Digital Next is released. Instead they left it as it was after they added the Amonkhet expansion, so the computer is only ever playing decks around that expansion instead of using decks from all previous expansions. And more than half of the daily quests are still for online multiplayer only, which is a problem when players leave an abandoned game and the remaining players can’t find matches any more.

Then there is of course the issue of “virtual property”. Previous versions of electronic Magic sold you virtual boosters of cards. If you are forced to switch to a new product, you lose your virtual card collection of the previous versions and have to start over. Legally of course you never really owned those electronic Magic cards. But players don’t feel like that, especially with platforms like MtGO where cards can be traded with other players for real money. I liked Magic Duels because it altered the rules of how many rare and legendary cards you can use, which made building up a full collection much more affordable. I doubt the next version will have that feature.

I am still on the fence about Magic Digital Next (I assume they’ll announce another name for it this weekend). I left MtGO long ago because it was too PvP-centric for me, which resulted in an environment full of card sharks, scams, and toxic players. I mostly used the PvE part of Magic Duels, which for me was probably the best incarnation of Magic on a tablet. So my appreciation of Magic Digital Next will mostly depend on whether it supports more than a token AI and PvE play. These days far too many game developers have become extremely lazy, and beyond a tutorial make their games mostly PvP, basically using their customers as content for other customers. As they never solved even the basic problems of that approach for virtual cardgames, like stalling or quitting at the first sign of trouble, I wouldn’t be interested in a PvP version of electronic Magic the Gathering.

[EDIT: The new name is Magic the Gathering Arena, more info here.]

Quitting early

I still play a lot of Magic Duels, still nearly exclusively against the AI. It is in the nature of that game that there is a certain randomness which is independent of your skill in building decks or playing the game. Sometimes you don’t draw enough land, or draw the wrong color of land, and sometimes you draw too many lands and no spells to cast. Sometimes you draw exactly the right mana and spells of the right cost to play with that mana and start the game perfectly. The same is true for your AI opponent. Thus sometimes you get in a situation where your AI opponent had a perfect hand and is playing creature after creature, while either don’t have the mana or the spells to do anything much to stop him. After a few turns you already know that you will lose. Knowing that the AI opponent won’t be offended, I frequently quit in situations like that.

One of the reasons why I don’t like playing Magic Duels in PvP mode is that some people think that this behavior is also okay if you play against a human opponent. And I disagree with that. Imagine a sports event where one team decides to give up at half time and not to play the second half of the game, because the first half makes it near certain that they lost anyway. That would be completely unacceptable behavior is sports. Because winning is not the only thing a match is about, it is also about playing. In Magic a human opponent who has set up a great attack doesn’t just want to get a quick and easy win by the other guy conceding, he wants to play out the game until that win. Quitting early is impolite towards that other guy, provided that he isn’t an AI who doesn’t really mind.

A lot of games these days have no penalties at all for quitting. To some extent that is due to the problem that half of all players lose in a PvP game, so games have tried to hide that fact by rewarding the loser a bit and the winner a bit more. And you don’t want a disconnect being interpreted by the game as toxic player behavior and punishing that player by a lot. However that does end up in a situation where quitting early in a game which you aren’t clearly winning might actually be the best strategy. Because games are frequently set up in a way where you can immediately start the next game, and staying until the end of a game when the rewards for losing slowly and quitting early are the same is a waste of time you could have spent winning the next game.

I remember a lot of people in the early days of internet gaming enthusing about the internet bringing people from all over the world together. But somehow that ended up with dehumanizing our human opponents: Many people don’t think of their human opponents as real people any more, but consider them to be more or less equal to an AI opponent. People who would never cheat in a board game with friends around a table do cheat in multiplayer video games. They don’t even consider whether their opponent might quite like to play a game until the actual win condition, but quit early in order to earn rewards in the next game faster. And game design frequently encourages that sort of behavior. Players end up being content in a game for which the devs were too lazy to program an AI. And somehow between all these developments we lost a bit of humanity.

Trump Judicial Nominee Withdraws After GOP Senator Publicly Embarrasses Him

“Just because you’ve seen ‘My Cousin Vinny’ doesn’t qualify you to be a federal judge.”

Sen. John Kennedy (R-LA) questioned judicial nominee Matthew S. Petersen last week before the Senate Judiciary Committee, and Petersen’s abysmal performance went viral.

Peterson, who has never handled a jury or bench trail, failed to correctly answer basic legal questions.

“Just because you’ve seen My Cousin Vinny doesn’t qualify you to be a federal judge,” Kennedy said in an interview that aired Monday. “And he has no litigation experience. And my job on the judiciary committee is to catch him. I would strongly suggest he not give up his day job.”

Kennedy suggested that President Donald Trump didn’t even care if his nominee was confirmed and inadvertently admitted that he wasn’t well-versed about his own judicial picks.

“[Trump] has told me, ‘Kennedy, when some of my guys send someone who is not qualified, you do your job,’” Kennedy explained.

Petersen withdrew from consideration on Monday.

Relive the former nominee’s most excruciating moments below.

 

Related Stories

  • If Trump Fires Mueller, Is a Watergate Rerun Coming?
  • Robert Mueller Has the Trump Team Panicked, No Matter What the President Says
  • Is a Twitter Purge of the Alt-Right Underway?

Simplified : Client_Server – Socket Programming in Java

Client_Server – Socket Programming in Java

java socket programming



Client -server communication

At a basic level, network-based systems consist of a server , client , and a media for communication. A computer running a program that makes a request for services is called client  machine. A computer running a program that offers requested services from one or more clients is called  server machine.

Client-Server Architcture


What are Sockets?

In Client-Server architecture, you have two processes (running client-Server programs) that want to communicate with each other. For that, they have to establish a communication link between themselves. There is a network available,they just need to connect to this network , for this they use sockets.

Sockets in client server architecture

A socket is one endpoint of a two-way communication link between two programs running on the network.

An endpoint is a combination of an IP address and a port number. Every TCP connection can be uniquely identified by its two endpoints. That way you can have multiple connections between your host and the server.
The java.net package in the Java platform provides a class, Socket, that implements one side of a two-way connection between your Java program and another program on the network. 

How do I Open a Socket ?

If you are programming a client, then you would open a socket like this:
 Socket s;
s
= new Socket("Machine name", PortNumber);
Where Machine name is the machine you are trying to open a connection to, and Port-Number is the port (a number) on which the server you are trying to connect to is running. When selecting a port number, you should note that port numbers between 0 and 1,023 are reserved for privileged users (that is, super user or root). These port numbers are reserved for standard services, such as email, FTP, and HTTP. When selecting a port number for your server, select one that is greater than 1,023!


It is a good practice to handle exceptions. The above can be written as:

    Socket s;
try {
s
= new Socket("Machine name", PortNumber);
}
catch (IOException e) {
System.out.println(e);
}
If you are programming a server, then this is how you open a socket:

    ServerSocket ss;
try {
ss
= new ServerSocket(PortNumber);
}
catch (IOException e) {
System.out.println(e);
}
When implementing a server you also need to create a socket object from the ServerSocket in order to listen for and accept connections from clients.

Socket clientSocket = null;
try {
serviceSocket
= ss.accept();
}
catch (IOException e) {
System.out.println(e);
}

How do I create Buffered Reader?

Java BufferedReader class is used to read the text from a character-based input stream. It can be used to read data line by line by readLine() method. It makes the performance fast. 
    try {
BufferedReader br = new BufferedReader(new InputStreamReader(ss.getInputStream()));

}
catch (IOException e) {
System.out.println(e);
}

How do I create an output stream?

On the client side, you can create an output stream to send information to the server socket using the class  of java.io:
    PrintStream output;
try {
OutputStream ostream = sock.getOutputStream();
DataOutputStream dos = new DataOutputStream(ostream);

}
catch (IOException e) {
System.out.println(e);
}
The class DataOutputStream allows you to write Java primitive data types; many of its methods write a single Java primitive type to the output stream. The method writeBytes is a useful one.

How do I Close a Socket ?

On the client side:

    try {
output
.close();
input
.close();
s
.close();
}
catch (IOException e) {
System.out.println(e);
}

On the server side:

    try {
output
.close();
input
.close();
ss
.close();
}
catch (IOException e) {
System.out.println(e);
}
Let’s see java code for one-way communication using socket programming:

Client Side Code:
import java.net.Socket; 
import java.io.OutputStream;
import java.io.DataOutputStream;

public class SCPTL
{
public static void main(String args[]) throws Exception
{
Socket sock = new Socket("localhost", 5000);
String message1 = "Learn-Intern-Certify from SCPTL";

OutputStream ostream = sock.getOutputStream();
DataOutputStream dos = new DataOutputStream(ostream);
dos.writeBytes(message1);
dos.close();
ostream.close();
sock.close();
}
}
Server Side Code:
import java.net.ServerSocket;            
import java.net.Socket;
import java.io.*;

public class SERVER
{
public static void main(String args[]) throws Exception
{
ServerSocket sersock = new ServerSocket(5000);
System.out.println("server is ready"); // message to know the server is running

Socket sock = sersock.accept();

BufferedReader br = new BufferedReader(new InputStreamReader(sock.getInputStream()));

String message2 = br.readLine();
System.out.println(message2);
sock.close(); sersock.close();
}
}

Output:

Client:

Client side output
Server:

Server side output

Want to learn more about java?

Nokia 9 passes through the FCC with dual rear cameras and Snapdragon 835

We might still see a Christmas miracle, but apart from that, it’s looking more likely that the unannounced Nokia 9 will not debut before the year is out. Even so, it appears that the smartphone recently paid a visit to the FCC, with the phone appearing similar to the Nokia 8 in a few areas.

Starting with the display, the Nokia 9 features a 5.5-inch QHD OLED display, which is a bit larger than the Nokia 8’s 5.3-inch LCD display and delivers deeper blacks and punchier, albeit slightly unrealistic, colors. Much like the Nokia 8, the Nokia 9 also sports dual rear cameras — the former features dual 13 MP cameras, while the latter opts for a 12 MP and 13 MP sensor.

The rear cameras are not that different, though the story changes with the front camera. Whereas the Nokia 8 features a 13 MP selfie camera, the Nokia 9 makes do with a 5 MP sensor. I’m not sure why this change is so drastic, and even though megapixels aren’t everything, it’s hard to ignore the drop in image resolution.

Editor’s Pick

To wrap up the differences, the Nokia 9 swaps the Nokia 8’s 3,090 mAh battery for a larger 3,250 mAh power pack.

Everything else about the Nokia 9 is pretty much the same when compared to the Nokia 8. That means you’ll still find Qualcomm’s Snapdragon 835 chipset and 128 GB of internal storage, with a microSD card slot available for additional space.

Some people might be upset about Nokia’s choice to go with the Snapdragon 835 for the Nokia 9, particularly since Qualcomm announced the newer, more capable Snapdragon 845 chipset. At the same time, it’s not like the Snapdragon 845 was announced when Nokia started work on the Nokia 9.

There are still some unanswered questions around the Nokia 9, such as when Nokia will unveil the phone, when it will be available, and how much it will go for. At this point, the earliest we could see the Nokia 9 is during CES 2018, though MWC 2018 might be slightly more viable.

The 7th Continent Kickstarter

I still haven’t really had the time to playtest The 7th Continent, a boardgame I got via Kickstarter. But now the second round of Kickstarter started. If you are interested, you can get the game here. The game isn’t available elsewhere. That is why I pledged $49 to get the expansion set.

P.S. The Kickstarter is already 2500% funded, so with them having made good on their first Kickstarter promises, this is a relatively sure bet. Might of course be late, but that is pretty normal on Kickstarter.

Android LinkedIn Integration: Android – LeaVe my baThRoom at-least !

LinkedIn is a business and employment-oriented social networking service that operates via websites and mobile apps. It is mainly used for professional networking, including employers posting jobs and job seekers posting their curriculum vitae. LinkedIn allows members (both workers and employers) to create profiles and “connections” to each other in an online social network which may represent real-world professional relationships. It presents curriculum vitae of the individual which can be browsed by recruiters.

Android LinkedIn Integration

Android allow applications to connect to LinkedIn and share data or any kind of updates on LinkedIn.
Following are the ways through which you can integrate LinkedIn in application

  • LinkedIn SDK(Scribe)
  • Intent Share

1. LinkedIn SDK(Scribe)

The mobile SDK for Android increases your app’s time to market by providing out-of-box support for LinkedIn natively inside your Android applications. This allows you to boost your sign in conversion rates and provides you more time to work on the things that matter.

The SDK provides:
Single sign-on (SSO) authentication, in conjunction with the LinkedIn mobile app.
A convenient wrapper for making authenticated calls to LinkedIn’s REST APIs.
Deep linking” to additional member data in the LinkedIn mobile app.

Follow steps to integrate LinkedIn SDK 

Creating a new app in LinkedIn Developer account
Create a new LinkedIn application at https://www.linkedin.com/developer/apps. Click on Create new Application and follow the setup.
 create LinkedIn developer app
Fill following form
 create LinkedIn developer app form

 you will get Application ID for your Application

Create new Android Project
Open AndroidManifest.xml file and include the following code given below:
<uses-permission android:name=”android.permission.INTERNET” />
Download Mobile LinkedIn SDK 
Go to https://developer.linkedin.com/docs/android-sdk  and download a Mobile SDK for Android.
Unzip the file and add LinkedIn-sdk folder in your project.
Add Mobile LinkedIn SDK in project
Open setting.gradle file in your project and include linkedin-sdk folder in your project.
include ‘:app’,’:linkedin-sdk
Adding library in depencencies
Add the following code in the file’s (/app/build.gradle file) dependencies to compile linkedin-sdk
compile project(‘:linkedin-sdk’)
compile ‘com.squareup.picasso:picasso:2.5.2’
compile ‘de.hdodenhof:circleimageview:1.3.0’
Synchronize your project
Generate hash Key
We need to generate a hash key. This generated Hash key will integrate your app with LinkedIn account.
Adding hash key in your LinkedIn Developer account
Go to https://www.linkedin.com/developer/apps  select your application name and click the Mobile tab. Add the package name and generated hash key in your LinkedIn Application. This hash key will authenticate your mobile application.
LinkedIn developer app hash key
Once everything is complete, you can run the Linkedin sample application

2. Intent Share

An android share intent allow your app to share contents such as URL or text and Image to other apps installed in your Android device like Facebook, Twitter, Messaging, Instagram, whatsapp, etc.

 Android provides intent library to share data between activities and applications. In order to use it as share intent , we have to specify the type of the share intent to ACTION_SEND. Its syntax is given below

Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);

Next thing you need to is to define the type of data to pass , and then pass the data. Its syntax is given below 

shareIntent.setType("text/plain");
shareIntent.putExtra(Intent.EXTRA_TEXT, " From Suven Consultency");
startActivity(Intent.createChooser(shareIntent, "Hello!!!!"));
Example
here is an example to share data on Linkedin using intent share.
  • You will use Android studio to create an Android application under a package net.suven.android.android_linkedinintegration.
  • Modify src/MainActivity.java file to add necessary code.
  • Modify the res/layout/activity_main to add respective XML components.
  • Run the application and choose a running android device and install the application on it and verify the results.
MainActivity.java
package net.suven.android.android_linkedinintegration;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;

import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import java.io.FileNotFoundException;
import java.io.InputStream;

public class MainActivity extends AppCompatActivity {
private ImageView img;

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

img = (ImageView) findViewById(R.id.imageView);
Button b1 = (Button) findViewById(R.id.button);

b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent sharingIntent = new Intent(Intent.ACTION_SEND);
Uri screenshotUri = Uri.parse("android.
resource://net.suven.android.android_linkedinintegration/*");

try {
InputStream stream = getContentResolver().openInputStream(screenshotUri);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

sharingIntent.setType("suvenlogo/jpeg");
sharingIntent.putExtra(Intent.EXTRA_STREAM, screenshotUri);
startActivity(Intent.createChooser(sharingIntent, "Share image using"));
}
});
}
}
activity_main
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textView"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:textSize="30dp"
android:text="Linkedin Share" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Tutorials Point"
android:id="@+id/textView2"
android:layout_below="@+id/textView"
android:layout_centerHorizontal="true"
android:textSize="35dp"
android:textColor="#ff16ff01" />

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView"
android:layout_below="@+id/textView2"
android:layout_centerHorizontal="true"
android:src="@drawable/logo"/>

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Share"
android:id="@+id/button"
android:layout_marginTop="61dp"
android:layout_below="@+id/imageView"
android:layout_centerHorizontal="true" />

</RelativeLayout>

Following is the output of application.

android linkedin integration app
Click on share button. you will see list of share provider
share post
Now select LinkedIn from the list and then write your message shown in following image 

write linkedin post


Click here to download Source Code and APK

Are you interested to learn Android Programming?

Samsung Galaxy A8 and A8 Plus announced: Sleek, selfie-focused mid-rangers

Samsung just announced its new mid-range phones, the Galaxy A8 (2018) and Galaxy A8 Plus (2018).

Replacing the 2017 Galaxy A lineup, the Galaxy A8 and Galaxy A8 Plus feature attractive specs and a design that is inspired by the Galaxy S series. The coolest feature is the dual front cameras, which feature f 1.9 lenses and portrait mode.

A simpler naming scheme

In recent years, Samsung has released several popular phones in the mid range as part of the A series. The naming convention for these devices – Galaxy A3, Galaxy A5 and Galaxy A7 – conflicted with the way Samsung names its most important devices, the Galaxy S and Galaxy Note series.

With the 2018 generation, Samsung has renamed the Galaxy A5 to Galaxy A8 (2018) and the Galaxy A7 to Galaxy A8 Plus (2018).

We don’t know for now what happened to the Galaxy A3. Did Samsung kill it? Will it be folded in the Galaxy J series?

Front-facing dual cameras

The Galaxy A8 and A8 Plus are the first Samsung phones with dual front cameras. These mid-rangers beat out the flagships to the punch, though dual front cameras have been a fixture on mid-range phones from other manufacturers.

The cameras feature f 1.9 lenses – basically, the lower the number the better – so they should give your selfie nice background blurs.

One of the cameras is 16MP, and the other one 8MP. Samsung says you can switch between them to get the type of shot you like, which makes it sound like they have different widths of angle.

Portrait modes are all the rage, and the Galaxy A8 and Galaxy A8 Plus are jumping on the bandwagon. You can take selfies and adjust the amount of blur in the background, before and after taking the image – this feature is called Live Focus and we’ve seen it before on the rear dual camera of the Galaxy Note 8.

You also get stickers and a beauty mode to spice up your self-portraits.

Familiar design, competent specs

The new Galaxy A8 (2018) and Galaxy A8 Plus (2018) look a lot like Samsung’s 2017 devices, mixing a smooth glass back with a metallic chassis and the 18.5:9 display form factor.

They are available in black, orchid grey, gold and blue.

The Galaxy A8 features a 5.6-inch Full HD+ (“+” denoting it’s an 18.5:9 panel), while the A8 Plus goes up to 6 inches, but keeps the same resolution.

The two phones share most of the key specs, including the cameras (16 MP PDAF f 1.7 on the back), an octa-core processor, 4GB of RAM, and 32/64GB of storage.

The smaller A8 features a 3,000 mAh battery. The A8 Plus gets an excellent 3,500 mAh – that’s the same as the much pricier Galaxy S8 Plus.

Both phones feature fingerprint sensors (placed below the rear camera), USB Type-C, Samsung Pay (with MST, so you can use them on older points of sale), and IP68 water and dust resistance.

Comparing the Galaxy A8 to the current generation

Compared to the 2017 Galaxy A5 and Galaxy A7, the Galaxy A8 (2018) and Galaxy A8 Plus (2018) offer updated designs that follow the Galaxy S series (much smaller bezels, fingerprint sensor is now on the back), as well as improvements to the processor, RAM and memory.

The biggest new feature is the dual front camera. The screens are also larger, though the actual size of the phone is almost unchanged. That’s probably why the battery capacity remained roughly the same.

Samsung Galaxy A8 and A8 Plus price and availability

You will be able to buy the Galaxy A8 (2018) and Galaxy A8 Plus (2018) starting from January. That’s the only detail that Samsung has revealed so far, but we expect to learn more at CES Las Vegas, when we’ll also go our hands on these two phones.

If the price of previous phones in the A series is any indication, the new A8 and A8 Plus will cost in the $350-$450 range, depending on the market.

Thoughts on the new Galaxy A8 (2018) and Galaxy A8 Plus (2018)?

Trump Diehards Take Over Taylor Swift’s New App, Instantly Start Spewing Hate

The pop star has come under fire for her refusal to condemn the so-called alt right.

Taylor Swift launched a new app for her loyal fans last week and within just two days, it was overrun by President Donald Trump’s fans to spread homophobia.

In a Tuesday report from the Daily Beast, screen captures of the app reveal the newly launched app, “The Swift Life,” was taken over by dogged Trump supporters.

Swift’s followers rushed to the app stores and by Monday it was among the top trending apps. It gave Swift fans a place on social media to see exclusive videos, use “Tay-mojis” and have their own Swift-centric newsfeed. But the most popular feature, which allows supporters to meet each other and chat, was possessed by right-wing trolls. Many Swift fans already know each other and have met on Facebook and Twitter. They’ve formed a collective of fans ready to respond to any criticism of their favorite star.

While the singer’s fans all had something in common with Swift, their political ideologies don’t mesh well. When conversation turned to politics, the fans started in on Trump and hate aimed at Hillary Clinton.

“Republicans and Trump supporters have just as much right to be here as everyone. There are people who voted for him or may vote Republican but didn’t vote for him. They may not agree with his beliefs but at least he supports our troops,” on fan wrote.

The comment spawned an argument in the comments section which quickly devolved into other Swift fans saying things like, “I just don’t accept gays lesbians and bisexuals,” Britt said.

Another comment from Britt claimed that her husband serving in the military was safer with Trump in office. Hillary has “done some things I don’t agree with when it comes to the safety of our troops… at the end of the day it came down to what I felt was best. There are people who voted for reasons other than Trump being a bigoted, sexist, homophobe,” she wrote in another post. The backlash was swift.

Those who love Swift and Trump quickly flocked to the defense of their kin on social media. They demanded their freedom of speech be recognized.

“I downloaded Tay’s app and before you start criticising me I’m a trump supporter (sic),” one fan tweeted. “I don’t see why people talk politics in there???? Like helloooooo let’s talk about our fav. We should support Taylor and I’m so disappointed she didn’t have one million downloads a minute.”

Britt ultimately deleted all of her posts about the president before writing, “Speak now and forever hold your peace. Not on TSL. Speak now here and everyone jumps down your throat.”

“You don’t get to use ‘free speech’ as an excuse to be rude and hateful,” another fan responded.

Rumors spread of political posts being deleted by moderators while international Swift fans blasted Americans for “ruining the app” and “distracting from Taylor.”

 

 

When a user logs into the app it demands users “help make this a safe and inclusive place for everyone to enjoy.” They’re encouraged to report content, saying, “see anything inappropriate, including instances of bullying or harassment, please report it.”

Swift made news when she refused to speak out against neo-Nazis and white supremacists in the so-called “alt-right.” She ultimately became the darling of the far-right movement, although Swift has tried to remain non-political. However, in 2016 Swift drew attacks from feminist supporters, who alleged that she was using feminist ideals to sell records while secretly supporting the anti-feminist candidate.

In a Yahoo interview with Swift friend Todrick Hall, Swift’s politics came up and he shut down the speculation she was a closet Trump supporter.

“Yeah, many people have been tweeting me, ‘She supports Trump! She probably voted for Trump!’” he said. “They’re making this huge assumption, when Taylor has never to my knowledge come out and said anything about her being pro-Trump.”

While he wouldn’t confess any inside information on whether Swift was a closet white supremacist, he said she has been “nothing but a great person to me,” as an gay African-American man.

“Her family has welcomed me into their home and treated me like I was a member of the family,” he said. “They’ve welcomed every single person I’ve ever brought around them. I’ve never felt like there was ever a moment that I couldn’t be myself, and talk about the fact that I’m gay or whatever.”

“Maybe one day, Taylor will start being super-political, and using her voice to do the things that people think that she should be doing,” he added. “But even then, she will probably be ridiculed for not being vocal enough, or not being on the right side.”

Left-leaning Swift fans attacked the pop star just last week after she claimed she “couldn’t have asked for a better year.” They allege the comment was “tone deaf” to the horrors many people of color faced in wake of the Trump presidency.

“I mean, yeah there were Nazi’s and white supremacy marches, and families are being torn apart, and there were mass shootings, and people are losing health care, but none of that affects me, so 2017 was great!” one person said on Twitter.

 

 

Related Stories

  • Paul Krugman: The GOP Is Completely, Hopelessly Corrupt
  • How Fox News Is Waging ‘Psychological Warfare’ on the American People
  • Trump Judicial Nominee Withdraws After GOP Senator Publicly Humiliates Him

Remove App Stories from your Facebook Timeline

The burden to control if an app can post on the Timeline falls on the shoulder of the user i.e.you. That’s theory, but in practice the vast majority of Facebook users don’t bother taking the time to review the app install screen.

So, they just click OK and in most cases that means giving an app in question permission to post its activities on your Timeline.

While the integration of an app with Facebook for login is convenient, doing so may occasionally come with the side-effect of letting these third-party apps drown your Timeline with notifications, which directly leads to your friends’ News Feed being bombarded by status updates.

So if you are the one  who don’t want to see this on your Facebook app’s timeline, just follow the below steps to remove it.

Step 1

Open up Facebook and click on the Down Arrow button  located right next to the Quick Help button.

Step 2

Select the Activity Log option from the drop down menu as shown above and click on the All Apps tab located on the Filters menu as shown below.

Step 3

To delete an app update, all you need to do is to click on the Edit button and select the Delete option. If you would prefer to stop the app from posting updates permanently, you can choose the Remove [App Name] option instead.

This way you can edit your timeline.

Want to learn Data Analytics?