text:
Same Script, Different Context: Increased Access To Legitimate Content Reduces Piracy • Internet Association
Internet Association
Algorithms & AI
Broadband Internet AccessUniversal High Speed Internet Access, Net Neutrality
Content ModerationIntermediary Liability, Section 230
Enterprise CloudFinancial Services & The Cloud, Government IT Modernization
Intellectual PropertyPatents, Copyright, Creators
Privacy, Security, & SafetyFederal Privacy Legislation, Protecting Privacy Online, National Standard For Data Breach Notification
Sharing EconomyRide & Car Sharing, Short-Term Rentals, On-Demand Workers
Digital TradeCopyright Frameworks, Intermediary Liability Protections, Digital Trade Agenda, Cross-Border Data Flows & Data Localization, Customs And Trade Facilitation
WorkforceDiversity & Inclusion, Industry Workforce
#ConnectingWhatMatters
Internet Community Crawls
Internet Economy State By State
#InternetOfGood
Home • Blog
Same Script, Different Context: Increased Access to Legitimate Content Reduces Piracy
date icon October 17, 2014
It's the age old [Internet] question: what should be done to curb online piracy?
While there is widespread consensus that online piracy is challenging given the scale and scope of the Internet, the answer to this age old question depends on who you ask.
Suggested policy solutions range from pure self-regulation; to voluntary multi-stakeholder processes think the current DMCA multi-stakeholder process driven by the USPTO; to subtle pushes for legislative solutions.
Currently, the United States House Judiciary IP Subcommittee is in the middle of its comprehensive review of the U.S. Copyright Act in light of the digital age. As the conversation regarding the effectiveness of the copyright system in the digital era rages on, it is clear that a "one size fits all" policy solution is not practical. In previous iterations of this debate, increased online piracy was often attributed to a narrow list of culprits, most notably search engine results. However, this narrow focus fails to account for the trending marketplace realities and consumer behavior.
This week's events alone are a strong indication that the digital marketplace is rapidly evolving and recent innovations and product launches have propelled us into a dramatically different, online context. Principally, the lines between platforms and content providers are increasingly blurring.
'Winter Is Coming': HBO, the cable channel that brought us Game of Thrones announced earlier this week that in 2015, the network will offer a stand alone, over-the-top web-streaming service in the United States to capture more of the 80 million homes that currently don't have access to the network. This service will compete directly with existing services like Netflix. In a statement following this announcement, Netflix CEO Reed Hastings said, "…competition will drive us both to be better."
We Want In: Shortly after HBO's announcement and post the Supreme Court's Aereo's decision in favor of the network, CBS announced its "CBS All Access" digital subscription service search to launch in its top 14 markets. For about $6 a month, the service will offer on demand episodes of its top primetime shows after their air live as well as episodes from previous seasons of its programs. CBS CEO Les Moonves said this move is intended to "capitalize on technological advances that help consumers engage with our world-class programming."
Making Moves: Google is moving full steam ahead in its quest to help Internet users effectively and efficiently reach legitimate sources of content. The search company just rolled out three key features to help this effort including:
Changing up its ad formats related to search results on music and movie queries: Now, when you search for a movie or song of your choice, Google will prominently display authorized platforms offering legitimate content such as Amazon, Netflix, and even its own Google Play.
Improving its DMCA demotion signal in Search: Google has refined its 2012 tools to downgrade websites that receive large volumes of valid DMCA notices. which it thinks will noticeably impact the rankings of these illegitimate sites. Expect this to go live globally next week.
Autocompletion Changes: Google will also be removing additional terms from autocomplete (based on DMCA removal notices) that are typically associated with piracy.
There's More: In addition to rolling out these features, YouTube recently announced that Content ID – its system to help creators identify their respective works on the platform and then monetize the distribution of these works – has generated a whooping $1 billion for its partners that participate in the program. Also, YouTube just announced its first ever NY production studio to help its artists refine their skills. To get the full scope of what Google is doing to fight piracy, check out their new report here.
It's simple – the marketplace is working, and the market can act more nimbly and effectively than regulation can.
In 2008, a "Digital Entertainment Survey" found that a perceived lack of choice in legal alternatives contributes to online infringement. And, according to Ipsos, the introduction of legal alternatives such as Spotify and Netflix was followed by dramatic reductions in online infringement of music and videos – 80% and 50%, respectively. Furthermore, Sandvine found that BitTorrent traffic used to account for about 60% of online traffic, but in recent years due to services like Netflix, Spotify, and YouTube, this percentage has plummeted to less than 10%.
Healthy marketplace competition in providing availability and access to legal alternatives of content are critical to meeting consumers demands. The current U.S. copyright system continues to allow for a dynamic and flexible digital environment where creators can adequately protect their works while also allowing for new and innovative products and services. Industry efforts and marketplaces solutions are proven methods to address the challenges presented by online piracy and should be encouraged through sound copyright policy.
Carousel items
date icon November 5, 2020
How E-Commerce And Online Marketplaces Help Small Businesses During COVID-19
The pandemic has forced small businesses – from local yoga studios to condiment dressing sellers – to find new ways…
The Reality of Revoking Section 230
It's no secret that politicians from both sides of the aisle have set their sights on Section 230 as the…
by Jon Berroya
date icon September 24, 2020
IA Webinar Engages Industry Experts To Discuss How Section 230 Will Enable Pandemic Recovery
The pandemic has changed the way we travel, shop, make connections, and even buy new homes. User reviews, ratings, and…
Internet Association Joins Leading Social Justice Groups In Co-Signing Letter Advocating For Reforms To Wisconsin Political Leaders
The civil unrest we've experienced in 2020, and the latest protests in Kenosha, Wisconsin, have brought new attention to the…
by Sean Perryman
date icon September 1, 2020
ICYMI: IA Files Multiple Amicus Briefs, Releases Report Demonstrating The Value Of Section 230
This summer, Internet Association (IA) continued to demonstrate Section 230's critical role in empowering online services to moderate content and…
date icon August 25, 2020
IA Outlines How Section 230 Encourages Innovation While Protecting Users
On July 28, Internet Association (IA) Deputy General Counsel Elizabeth Banker testified before the Senate Subcommittee on Communications, Technology, Innovation,…
IA's Job Referral Site: Improving D&I In The Internet Industry
The recent public outcry over racial disparities has motivated companies across the country to take a critical look at the…
Why Mobilizing The Internet Sector To Implement Racial Justice Reforms Is Essential
The tragic deaths of Ahmaud Arbery, Breonna Taylor and George Floyd opened the eyes of American communities this summer —…
date icon June 24, 2020
IA Details Concerns That EARN IT Act Would Harm Existing Efforts To Combat CSAM
On March 11, Internet Association (IA) Deputy General Counsel Elizabeth Banker testified before the Senate Judiciary Committee on internet companies'…
Looking to Upgrade Your IT System? Try Standing Up a Digital Services Team
Imagine having to operate critical government IT systems so obsolete that only programmers in retirement can update software. This is…
by Robert Callahan
date icon June 4, 2020
Congress Must Act to Protect Americans' Privacy
Protecting Americans' data privacy has never been more important. Millions of Americans are relying on internet services to purchase basic…
date icon May 15, 2020
How The Internet Is Keeping Us Connected During The Pandemic
The COVID-19 pandemic will leave a lasting mark on society and how we live our lives. Today, modern technology is…
Show previous items
Show next items
Digital Trade
Privacy, Security, & Safety
We'll let you know about important information that affects the way you use and enjoy the internet today, upcoming events, and other interesting IA activity.
instagram logo facebook linkedin snapchat twitter youtube rss
© 2012-2021 Internet Association. All rights reserved.
About & Contact Careers Privacy Policy Cookie Policy


text:
var STATE = require('basis.data').STATE;
var Value = require('basis.data').Value;
var DataObject = require('basis.data').Object;
var Dataset = require('basis.data').Dataset;
var Expression = require('basis.data.value').Expression;
var Subset = require('basis.data.dataset').Filter;
var Extract = require('basis.data.dataset').Extract;
var Slice = require('basis.data.dataset').Slice;
var count = require('basis.data.index').count;
var sum = require('basis.data.index').sum;
var getTime = require('basis.utils.benchmark').time;
var TestCase = require('./test.js').TestCase;
var TestSuite = require('./test.js').TestSuite;
var createTest = require('./test.js').create;

var fileSync = new Value({ value: false });
var runnerState = new basis.Token('stopped');
var notifier = new basis.Token();
var elapsedTime = new Value({ value: 0 });
var startTime;
var flush = 0;

var testsToRun = new Dataset();
var awaitProcessingTests = new Dataset({
  listen: {
    item: {
      stateChanged: function(item){
        if (item.state != STATE.PROCESSING)
          this.remove(item);
      }
    }
  }
});
var doneTests = new Subset({
  source: testsToRun,
  ruleEvents: 'stateChanged',
  rule: function(test){
    return test.state == STATE.ERROR || test.state == STATE.READY;
  },
  handler: {
    itemsChanged: function(sender, delta){
      if (delta.inserted)
        delta.inserted.forEach(function(test){
          var errors = [];
          var path = [];
          var cursor = test;
          var data = test.state.data instanceof DataObject
            ? test.state.data.data
            : {};

          if (data.error)
          {
            for (var line in data.errorLines)
              errors.push.apply(errors, data.errorLines[line].map(function(error){
                return {
                  line: line,
                  type: error.error,
                  expected: error.expectedStr,
                  actual: error.actualStr
                };
              }));
          }

          while (cursor = cursor.parentNode)
            path.unshift(cursor.data.name);

          notifier.set({
            action: 'report',
            name: test.data.name,
            path: path,
            source: data.testSource,
            success: test.state != STATE.ERROR,
            skipped: data.pending,
            time: data.time,
            exception: data.exception
              ? 'Exception on line ' + data.lastLine + ': ' + data.exception
              : null,
            errors: errors.length ? errors : null
          });
        });
    }
  }
});
var faultTests = new Subset({
  source: doneTests,
  ruleEvents: 'stateChanged',
  rule: function(test){
    return test.state == STATE.ERROR;
  }
});

var processingQueue = new Subset({
  ruleEvents: 'stateChanged',
  rule: function(test){
    return test.state != STATE.READY &&
           test.state != STATE.ERROR;
  }
});
var processingQueueTop = new Slice({
  source: processingQueue,
  rule: 'basisObjectId',
  limit: 1,
  handler: {
    itemsChanged: function(sender, delta){
      if (delta.inserted)
        delta.inserted.forEach(function(item){
          (flush++ % 4 ? basis.asap : basis.nextTick)(function(){
            if (processingQueueTop.has(item))
              item.run();
          });
        });
    }
  }
});

// destroy env when test case/suite is done
new Subset({
  source: new Extract({
    source: fileSync.as(function(value){
      return value ? null : testsToRun;
    }),
    rule: function(test){
      return test.parentNode || test;
    }
  }),
  ruleEvents: 'stateChanged',
  rule: function(test){
    return test.state == STATE.ERROR || test.state == STATE.READY;
  },
  handler: {
    itemsChanged: function(sender, delta){
      if (delta.inserted)
        delta.inserted.forEach(function(test){
          if (test.hasOwnEnvironment())
          {
            var env = test.getEnv();
            if (env)
              env.destroy();
          }
        });
    }
  }
});

var assertCount = sum(testsToRun, 'stateChanged', function(test){
  if (test.state.data instanceof DataObject)
    return test.state.data.data.testCount;
  return 0;
});
var testCount = count(testsToRun);
var testDoneCount = count(doneTests);
var testFaultCount = count(faultTests);
var testLeft = new Expression(testCount, testDoneCount, function(total, done){
  return total - done;
});

testLeft.addHandler({
  change: function(sender, oldValue){
    if (startTime)
      elapsedTime.set(getTime(startTime));

    if (!this.value && oldValue)
    {
      startTime = 0;
      runnerState.set('stopped');
      notifier.set({
        action: 'finish',
        time: elapsedTime.value
      });
    }
  }
});

function extractTests(data){
  var result = [];

  for (var i = 0, item; item = data[i]; i++)
  {
    if (item instanceof TestCase === false &&
        item instanceof TestSuite === false)
      item = createTest(item);

    var test = item.root;

    if (test instanceof TestCase)
      result.push(test);

    if (test instanceof TestSuite)
      result.push.apply(result, extractTests(test.childNodes));
  }

  return result;
}

function loadTests(data){
  // stop current run
  stop();

  // if data is string use basis.require to fetch data
  if (typeof data == 'string')
    // use IIFE to avoid build warning
    data = (function(require, url){
      return require(url);
    })(basis.require, data);

  // load tests
  testsToRun.set(extractTests(basis.array(data)));
}

function run(){
  // stop previous run
  stop();

  // start
  startTime = getTime();
  runnerState.set('running');
  notifier.set({
    action: 'start',
    testCount: testCount.value
  });

  // if eny test in progress, re-run by timeout
  if (awaitProcessingTests.itemCount)
    return setTimeout(run, 10);

  // reset test state
  testsToRun.forEach(function(item){
    item.reset();
  });

  // add test to processing queue
  processingQueue.setSource(testsToRun);
}

function stop(){
  // if processing queue is not empty
  if (processingQueue.itemCount)
  {
    // save processing tests
    awaitProcessingTests.add(processingQueue.getItems().filter(function(test){
      return test.state == STATE.PROCESSING;
    }));
  }

  // remove all tests from processing queue
  processingQueue.setSource();
}

//
// reg runner settings
//
basis.config.runnerBaseURI = '';

//
// exports
//
module.exports = {
  fileSync: fileSync,
  state: runnerState,
  time: elapsedTime,
  doneTests: doneTests,
  faultTests: faultTests,

  count: {
    assert: assertCount,
    total: testCount,
    left: testLeft,
    done: testDoneCount,
    fault: testFaultCount
  },

  loadTests: loadTests,
  run: run,
  stop: stop,
  subscribe: function(fn, context){
    return notifier.attach(fn, context);
  },
  unsubscribe: function(fn, context){
    return notifier.detach(fn, context);
  },
  on: function(eventName, fn, context){
    notifier.attach(function(event){
      if (event.action == eventName)
        fn.call(context, basis.object.slice(event));
    });
  },

  setup: function(config){
    if (!config)
      return;

    if ('baseURI' in config)
      basis.config.runnerBaseURI = config.baseURI;
  }
};

redpajama_set_name: RedPajamaGithub


text:
SBIRS GEO Flight 5: RocketShip delivers Atlas V for Space Force launch
The R/S RocketShip brings the Atlas V rocket to Cape Canaveral for launch of the SBIRS GEO-5 satellite. Credit: United Launch Alliance
A United Launch Alliance (ULA) Atlas V rocket built to carry a sophisticated U.S. national security satellite into space arrived at Cape Canaveral, FL today after sailing from the factory aboard the R/S RocketShip.
The Atlas V booster stage and Centaur upper stage left the ULA manufacturing facility in Decatur, AL, on March 23 aboard our unique custom-built rocket transportation vessel. The ship traveled shallow rivers and open ocean to reach Port Canaveral last night.
At dawn this morning, technicians boarded the vessel and went to work releasing the restraints that kept the flight hardware secure inside RocketShip's cargo hold during the trip. At 8 a.m. EDT, Centaur emerged from the ship and headed to the ULA facility for final preparations.
The Atlas booster stage followed behind. A transport truck pulled the stage directly to the ordnance bay at the Atlas Spaceflight Operations Center (ASOC) where it will undergo standard activities before the 107-foot-long stage can go vertical for launch processing.
The rocket will launch the fifth Space Based Infrared System Geosynchronous Earth Orbit (SBIRS GEO-5) missile warning satellite for the U.S. Space Force's Space and Missile Systems Center (SMC).
Built by Lockheed Martin, SBIRS GEO-5 will join a constellation of satellites with powerful scanning and staring sensors that provides continuous global surveillance to detect missile launches and provide early warning for the Unites States and its allies.
This will be the first launch for a satellite built on the company's modernized LM 2100 Combat Bus™ – an enhanced space vehicle that provides even greater resiliency and cyber-hardening against growing threats, as well as improved spacecraft power, propulsion and electronics.
Atlas V is the exclusive launch vehicle of choice for the SBIRS GEO spacecraft series. The rocket successfully launched the first in 2011, second in 2013, third in 2017 and fourth in 2018. Atlas V is also slated to launch SBIRS GEO-6 in 2022.
The SBIRS GEO Flight 5 launch will use an Atlas V 421 variant, with a four-meter-diameter (13.7-foot) payload fairing, two AJ-60 solid rocket boosters and a Centaur equipped with a single RL10C-1-1 cryogenic engine.
RocketShip makes first delivery after renaming
Three rockets depart factory aboard RocketShip
GOES-T: Atlas V arrives at launch site for next generation weather satellite

redpajama_set_name: RedPajamaCommonCrawl


text:
Karen Lynn Gorney
Play demo reel5:37
Karen Lynn Gorney is the romantic star of Saturday Night Fever (1977): the dance partner and fantasy girlfriend who said "no" to John Travolta, and won his heart in this mega-hit film, released to raves. Miss Gorney is also the legendary "Tara Martin" ( Erica's mortal enemy) on ABC's award-winning All My Children (1970). A classically trained Actress, and winner of the People's Choice and European Bravo Awards, Karen holds a BFA from Carnegie Mellon and MFA from Brandeis University in Acting and Speech. She has received raves in New York City and throughout the United States performing everything from William Shakespeare to Neil Simon. Karen's many independent films include A Crime (2006), with Harvey Keitel, and Searching for Bobby D (2005) [DeNiro], with Sandra Bernhard.
Karen was born in Beverly Hills, California, to Sondra Gorney, a writer-dancer-actress, and Jay Gorney, a producer-composer whose hits include the songs "Brother Can you Spare a Dime,"and "You're My Thrill". Karen's CD of her dad's hits, called "Hot Moonlight!" is availiable on Amazon, and karenlynngorney. It has received received international acclaim. international acclaim.
BornJanuary 28, 1945
Mrs. McKinley
First One In
Marty's Calling
Tarab
Actress44
Girl Clown
Blame (II)
Dorothy Hunter
Somewhere in Queens
Wife (Rose Marie)
Empathy, Inc.
Miss Miriam
Lynnie
Night of the Wolf
Delores
The Testimony of Erin J
The Buffalo Kid
Can't Dance
Demo Reel 3:56
Late Phases
Saturday Night Fever: Blu-Ray Directors Cut
Creating Karma
Bronx Paradise
Official Tarab Trailer - www.tarabthemovie.com
Karen Gorney
Beverly Hills, California, USA
Mark Toback July 1995 - present
Sondra Gorney
Released a New Age rock cd on a private label.
2 Interviews
3 Pictorials
1 Magazine Cover Photo
Originally auditioned for the role of Erica Kane on All My Children (1970).
[on the lack of film work, post her breakthrough Saturday Night Fever] They didn't know what to do with me. I was ahead of my time, and they didn't know what to put me in.