From d4095ca5aa1fd3efe90e6be8b361d0ca4fe592af Mon Sep 17 00:00:00 2001 From: Jeremy Kauffman Date: Fri, 8 Jul 2016 21:40:47 -0400 Subject: [PATCH] blog footer, refactor to view partials, remove old content --- controller/Actions.class.php | 5 + controller/Controller.class.php | 5 +- controller/action/DownloadActions.class.php | 12 +- controller/action/MailActions.class.php | 2 +- controller/action/NavActions.class.php | 9 +- ...st-public-screening-film-via-blockchain.md | 25 +--- ...eta-live-declare-independence-big-media.md | 29 +---- view/template/content/faq.php | 4 +- view/template/content/news.php | 4 +- view/template/content/post.php | 45 ++++++-- view/template/download/_signup.php | 63 +++++++++++ view/template/download/get-no-os.php | 4 +- view/template/download/get.php | 65 +---------- view/template/download/getAllowed.php | 4 +- view/template/fund/fund.php | 4 +- .../mail/{joinList.php => _joinList.php} | 0 view/template/nav/{footer.php => _footer.php} | 2 +- .../nav/{globalItems.php => _globalItems.php} | 0 view/template/nav/{header.php => _header.php} | 2 +- .../nav/{learnFooter.php => _learnFooter.php} | 21 +--- view/template/page/404.php | 2 +- view/template/page/docs.php | 65 ----------- view/template/page/feedback.php | 36 ------ view/template/page/fund-after.php | 2 +- view/template/page/goals.php | 4 +- view/template/page/home.php | 4 +- view/template/page/join-list.php | 6 +- view/template/page/learn-old.php | 70 ------------ view/template/page/learn.php | 4 +- view/template/page/press-kit.php | 2 +- view/template/page/publish.php | 4 +- view/template/page/team.php | 6 +- view/template/page/what-old.php | 99 ---------------- view/template/page/what.php | 7 +- view/template/page/why.php | 107 ------------------ web/scss/_blog.scss | 1 + 36 files changed, 178 insertions(+), 546 deletions(-) create mode 100644 view/template/download/_signup.php rename view/template/mail/{joinList.php => _joinList.php} (100%) rename view/template/nav/{footer.php => _footer.php} (91%) rename view/template/nav/{globalItems.php => _globalItems.php} (100%) rename view/template/nav/{header.php => _header.php} (95%) rename view/template/nav/{learnFooter.php => _learnFooter.php} (69%) delete mode 100644 view/template/page/docs.php delete mode 100644 view/template/page/feedback.php delete mode 100644 view/template/page/learn-old.php delete mode 100644 view/template/page/what-old.php delete mode 100644 view/template/page/why.php diff --git a/controller/Actions.class.php b/controller/Actions.class.php index eb7146e1..7f54a6fa 100644 --- a/controller/Actions.class.php +++ b/controller/Actions.class.php @@ -7,6 +7,11 @@ */ class Actions { + public static function param($key, $default = null) + { + return isset($_POST[$key]) ? $_POST[$key] : (isset($_GET[$key]) ? $_GET[$key] : $default); + } + //this is dumb protected static function returnError($error) { diff --git a/controller/Controller.class.php b/controller/Controller.class.php index 6234d09d..d682f145 100644 --- a/controller/Controller.class.php +++ b/controller/Controller.class.php @@ -75,7 +75,10 @@ class Controller case '/dl/lbry_setup.sh': return static::redirect('/get', 301); case '/art': - return static::redirect('/what'); + return static::redirect('/what', 301); + case '/why': + case '/feedback': + return static::redirect('/learn', 301); } $newsPattern = '#^' . ContentActions::URL_NEWS . '(/|$)#'; diff --git a/controller/action/DownloadActions.class.php b/controller/action/DownloadActions.class.php index 68d2eae5..d3a94430 100644 --- a/controller/action/DownloadActions.class.php +++ b/controller/action/DownloadActions.class.php @@ -66,8 +66,8 @@ class DownloadActions extends Actions public static function executeSignup() { - $email = isset($_GET['email']) ? $_GET['email'] : (isset($_POST['email']) ? $_POST['email'] : null); - $code = isset($_GET['code']) ? $_GET['code'] : (isset($_POST['code']) ? $_POST['code'] : null); + $email = static::param('email'); + $code = static::param('code'); if (!$email || !filter_var($email, FILTER_VALIDATE_EMAIL)) { @@ -123,6 +123,14 @@ class DownloadActions extends Actions ]; } + public static function prepareSignupPartial(array $vars) + { + return $vars + [ + 'allowInviteCode' => true, + 'referralCode' => static::param('r', '') + ]; + } + public static function subscribeToPrefinery($email, $inviteCode = null, $referrerId = null) { $apiKey = Config::get('prefinery_key'); diff --git a/controller/action/MailActions.class.php b/controller/action/MailActions.class.php index eafabcd7..6897eea9 100644 --- a/controller/action/MailActions.class.php +++ b/controller/action/MailActions.class.php @@ -59,7 +59,7 @@ class MailActions extends Actions return true; } - public static function prepareJoinList(array $vars) + public static function prepareJoinListPartial(array $vars) { $vars['listSig'] = md5(serialize($vars)); $vars += ['btnClass' => 'btn-primary', 'returnUrl' => $_SERVER['REQUEST_URI']]; diff --git a/controller/action/NavActions.class.php b/controller/action/NavActions.class.php index ae9a2f57..b8a3e109 100644 --- a/controller/action/NavActions.class.php +++ b/controller/action/NavActions.class.php @@ -19,9 +19,16 @@ class NavActions extends Actions return static::$navUri ?: $_SERVER['REQUEST_URI']; } - public static function prepareGlobalItems(array $vars) + public static function prepareGlobalItemsPartial(array $vars) { $vars += ['selectedItem' => static::getNavUri()]; return $vars; } + + public static function prepareLearnFooterPartial(array $vars) + { + return $vars + [ + 'isDark' => true + ]; + } } \ No newline at end of file diff --git a/posts/news/46-lbry-at-porcfest-first-public-screening-film-via-blockchain.md b/posts/news/46-lbry-at-porcfest-first-public-screening-film-via-blockchain.md index cc89971c..75ab9f99 100644 --- a/posts/news/46-lbry-at-porcfest-first-public-screening-film-via-blockchain.md +++ b/posts/news/46-lbry-at-porcfest-first-public-screening-film-via-blockchain.md @@ -4,11 +4,11 @@ title: 'History Is Made - First Public Film Screenings via Blockchain at PorcFes date: '2016-06-30 00:09:00' --- -Yes, the rumors are true. Last week, a major independent Hollywood film was publicly screened via blockchain – for the first time in history! +Yes, the rumors are true. Last week, a major independent Hollywood film was publicly screened via blockchain – for the first time in history! -LBRY took its blockchain out for a test run at [PorcFest XIII](http://porcfest.com/), and we’re delighted to announce it was a resounding success. Even more so because the screening also marked the private reveal of our new and very exciting media partner, the most well-regarded independent film company out there. +LBRY took its blockchain out for a test run at [PorcFest XIII](http://porcfest.com/), and we’re delighted to announce it was a resounding success. Even more so because the screening also marked the private reveal of our new and very exciting media partner, the most well-regarded independent film company out there. -The majority of the [LBRY team](https://lbry.io/team) attended PorcFest, which was the perfect event to spread the word of our platform. +The majority of the [LBRY team](https://lbry.io/team) attended PorcFest, which was the perfect event to spread the word of our platform. ![Jeremy speaking at PorcFest XIII](/img/lbryatpf.jpg) @@ -22,26 +22,11 @@ In addition to the screening, Jeremy delivered a well-attended talk entitled, Want to know more about the excellent films having their blockchain premiere on LBRY? Well, join our mailing list with the form below and keep an eye on your inbox this holiday weekend for a BIG announcement. Got your fireworks ready? -If the suspense is killing you, then go ahead and start mining LBRY credits (LBC) today! Our blockchain is live and LBC can be mined right now via CPU. [Learn more here](https://lbry.io/news/lbry-blockchain-live-mine-lbc-now). +If the suspense is killing you, then go ahead and start mining LBRY credits (LBC) today! Our blockchain is live and LBC can be mined right now via CPU. [Learn more here](https://lbry.io/news/lbry-blockchain-live-mine-lbc-now). **PorcFest Media Mentions:** Look at that! We received our first international coverage thanks to our appearance at PorcFest. * [Au festival des libertariens: revolvers, bitcoins et blockchain](http://rue89.nouvelobs.com/2016/06/27/festival-libertariens-revolvers-bitcoins-blockchains-264478), *L'Obs*, June 27th -* [Technology and Choice #08, Porcfest Potpourri](https://letstalkbitcoin.com/blog/post/technology-and-choice-08-porcfest-potpourri), *Let's Talk Bitcoin*, June 29th - -**Join LBRY's Mailing List:** - -
-
- - - - - - -
- You will receive 1-2 messages a month, only from LBRY, Inc. and only about LBRY. You can easily unsubscribe at any time.
-
-
+* [Technology and Choice #08, Porcfest Potpourri](https://letstalkbitcoin.com/blog/post/technology-and-choice-08-porcfest-potpourri), *Let's Talk Bitcoin*, June 29th \ No newline at end of file diff --git a/posts/news/47-beta-live-declare-independence-big-media.md b/posts/news/47-beta-live-declare-independence-big-media.md index 46d6a8da..83a9e5f1 100644 --- a/posts/news/47-beta-live-declare-independence-big-media.md +++ b/posts/news/47-beta-live-declare-independence-big-media.md @@ -12,7 +12,7 @@ date: '2016-07-04 00:00:01' **LBRY is proud to continue this tradition by announcing the beta release of our LBRY app and live blockchain this July 4th.** This time, the old order is Big Media – the major record labels, book publishers, and movie studios that have managed to cling to their fiefdoms despite the potential of the internet to connect independent artists directly to their fans. -It’s expensive to store and serve a bunch of content, so the market is dominated by the likes of Google’s Youtube, Apple’s iTunes, and Amazon’s Kindle Store. By combining several new open-source technologies and key innovations, LBRY is able to cut out the middlemen. The result is a platform that no one controls but everyone can access – just like the internet itself. +It’s expensive to store and serve a bunch of content, so the market is dominated by the likes of Google’s Youtube, Apple’s iTunes, and Amazon’s Kindle Store. By combining several new open-source technologies and key innovations, LBRY is able to cut out the middlemen. The result is a platform that no one controls but everyone can access – just like the internet itself. With LBRY, content creators – be they filmmakers, musicians, writers, or software developers – are empowered to set their own price and release their works to the world with a few clicks of the mouse. There are no ads, no corporate censors, and LBRY takes no portion of your income. For consumers, it means there is finally an alternative to the big media stores and the murky world of BitTorrent – which doesn’t have a payment system and therefore is run on goodwill. @@ -20,14 +20,14 @@ The LBRY app we're releasing today is the first of its kind – a media marketpl Indie production houses have seen the potential in LBRY. **[Oscilloscope Laboratories](http://www.oscilloscope.net/) and [Emergent Order](http://emergentorder.com/) signed on as featured content partners for today’s launch.** So right from the start, beta users will be treated to the following premium films: -**

It’s A Disaster

** +**

It’s A Disaster

** *

lbry://itsadisaster

* ![It’s A Disaster](/img/disaster500.png) *The sleeper hit dark comedy, starring David Cross and Julia Stiles, about four couples gathering for a regular brunch when they receive news of a disaster just outside the door. The film is considered a model of indie success.* -**

Fight of the Century: Keynes vs. Hayek Rap Battle

** +**

Fight of the Century: Keynes vs. Hayek Rap Battle

** *

lbry://keynesvhayek

* ![Keynes vs. Hayek Rap Battle](/img/keyneshayek500.png) @@ -44,29 +44,6 @@ In addition to watching these films and other pieces already uploaded to LBRY, t LBRY is a key component of Web 3.0, a new internet infrastructure that is secure, open-source, and natively decentralized. The company is self-financed and has assembled a [stellar team](https://lbry.io/team) of creatives and technologists. -**Stay Up-to-Date on LBRY Developments** - -* [Like us on Facebook](https://www.facebook.com/lbryio) -* [Follow us on Twitter](https://twitter.com/lbryio) -* [Join us on Reddit](https://www.reddit.com/r/lbry) -* [Collaborate on Slack](http://slack.lbry.io/) - -**Join LBRY's Mailing List:** - -
-
- - - - - - -
- You will receive 1-2 messages a month, only from LBRY, Inc. and only about LBRY. You can easily unsubscribe at any time.
-
-
- - diff --git a/view/template/content/faq.php b/view/template/content/faq.php index c649e740..745a42b6 100644 --- a/view/template/content/faq.php +++ b/view/template/content/faq.php @@ -1,5 +1,5 @@ - false]) ?> + false]) ?>

Frequently Asked Questions

@@ -13,4 +13,4 @@
- + diff --git a/view/template/content/news.php b/view/template/content/news.php index fde2802f..214e3d3d 100644 --- a/view/template/content/news.php +++ b/view/template/content/news.php @@ -1,5 +1,5 @@ - false]) ?> + false]) ?>
@@ -21,4 +21,4 @@
- + diff --git a/view/template/content/post.php b/view/template/content/post.php index b73e9a55..6a06b767 100644 --- a/view/template/content/post.php +++ b/view/template/content/post.php @@ -1,7 +1,7 @@ getTitle()) ?> getImageUrls()) ?> - +
getCover() ? 'style="background-image: url(\'/img/blog-covers/' . $post->getCover() . '\')"' : ''?> @@ -18,18 +18,45 @@
-
-
+
+
getContentHtml() ?> -
- hasPrevNext()): ?> - $post]) ?> - -
+ + + + false]) ?> hasAuthor()): ?> $post]) ?> + + + + */ ?> +
- + diff --git a/view/template/download/_signup.php b/view/template/download/_signup.php new file mode 100644 index 00000000..3aab4487 --- /dev/null +++ b/view/template/download/_signup.php @@ -0,0 +1,63 @@ +
+
+ +
+
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+
+ +
+
+ +
+ +
+ +
+
+ +
+
+ +(function(){ + var form = $('#signup-form'), + codeRadioInputs = form.find('input[name="code_select"]'); + codeRadioInputs.change(function() { + var selectedInput = codeRadioInputs.filter(':checked'), + hasChoice = selectedInput.length, + hasCode = selectedInput.val() == 'yes'; + + form.find('.has-code')[hasChoice && hasCode ? 'show' : 'hide'](); + form.find('.no-code')[hasChoice && !hasCode ? 'show' : 'hide'](); + if (!hasCode) + { + form.find('input[name="code"]').val(''); + } + }).change(); + + form.show(); +})(); + \ No newline at end of file diff --git a/view/template/download/get-no-os.php b/view/template/download/get-no-os.php index 23502af1..fe5d5249 100644 --- a/view/template/download/get-no-os.php +++ b/view/template/download/get-no-os.php @@ -1,6 +1,6 @@ - false]) ?> + false]) ?>
- + diff --git a/view/template/download/get.php b/view/template/download/get.php index 90cf5d58..c70f25cd 100644 --- a/view/template/download/get.php +++ b/view/template/download/get.php @@ -1,6 +1,6 @@ - false]) ?> + false]) ?>
@@ -19,66 +19,7 @@

LBRY is currently in invite only mode. Enter your email to join the waitlist, or your email and invite code for access.

-
-
- -
-
- -
- -
-
-
- -
- -
-
- -
-
- -
-
-
- -
-
- -
-
- - (function(){ - var form = $('#signup-form'), - codeRadioInputs = form.find('input[name="code_select"]'); - codeRadioInputs.change(function() { - var selectedInput = codeRadioInputs.filter(':checked'), - choice = selectedInput.val(), - hasChoice = selectedInput.length, - hasCode = choice == 'yes'; - - form.find('.has-code')[hasChoice && hasCode ? 'show' : 'hide'](); - form.find('.no-code')[hasChoice && !hasCode ? 'show' : 'hide'](); - if (!hasCode) - { - form.find('input[name="code"]').val(''); - } - }).change(); - - form.show(); - })(); - +
@@ -86,4 +27,4 @@
- + diff --git a/view/template/download/getAllowed.php b/view/template/download/getAllowed.php index 30788e66..a419bc05 100644 --- a/view/template/download/getAllowed.php +++ b/view/template/download/getAllowed.php @@ -1,6 +1,6 @@ $osTitle])) ?> - false]) ?> + false]) ?>
@@ -30,4 +30,4 @@
- \ No newline at end of file + \ No newline at end of file diff --git a/view/template/fund/fund.php b/view/template/fund/fund.php index 26497f28..7128a271 100644 --- a/view/template/fund/fund.php +++ b/view/template/fund/fund.php @@ -1,6 +1,6 @@ - false]) ?> + false]) ?>
@@ -190,4 +190,4 @@
- + diff --git a/view/template/mail/joinList.php b/view/template/mail/_joinList.php similarity index 100% rename from view/template/mail/joinList.php rename to view/template/mail/_joinList.php diff --git a/view/template/nav/footer.php b/view/template/nav/_footer.php similarity index 91% rename from view/template/nav/footer.php rename to view/template/nav/_footer.php index b22ea101..2b5fbf37 100644 --- a/view/template/nav/footer.php +++ b/view/template/nav/_footer.php @@ -6,7 +6,7 @@
- +
Free Speech Flag diff --git a/view/template/nav/globalItems.php b/view/template/nav/_globalItems.php similarity index 100% rename from view/template/nav/globalItems.php rename to view/template/nav/_globalItems.php diff --git a/view/template/nav/header.php b/view/template/nav/_header.php similarity index 95% rename from view/template/nav/header.php rename to view/template/nav/_header.php index 1a10b49c..f6de72a9 100644 --- a/view/template/nav/header.php +++ b/view/template/nav/_header.php @@ -21,7 +21,7 @@
diff --git a/view/template/nav/learnFooter.php b/view/template/nav/_learnFooter.php similarity index 69% rename from view/template/nav/learnFooter.php rename to view/template/nav/_learnFooter.php index 5d51dc20..999f77f5 100644 --- a/view/template/nav/learnFooter.php +++ b/view/template/nav/_learnFooter.php @@ -1,21 +1,12 @@ -
-
+
+
-

+

- - - */ ?> - -
- - - -
- + @@ -30,7 +21,7 @@
-

+

diff --git a/view/template/page/404.php b/view/template/page/404.php index fb3c8f95..7cf2bb0a 100644 --- a/view/template/page/404.php +++ b/view/template/page/404.php @@ -1,4 +1,4 @@ - false]) ?> + false]) ?>

Page Not Found

diff --git a/view/template/page/docs.php b/view/template/page/docs.php deleted file mode 100644 index e2b632d0..00000000 --- a/view/template/page/docs.php +++ /dev/null @@ -1,65 +0,0 @@ - - false]) ?> -
-
-

Docs

-

Layer 1: Protocol

-

While the protocol is one comprehensive set of rules, it is easier to understand as two parts.

-

Part A: The LBRY Blockchain

-

A blockchain, or distributed ledger is the key innovation behind the Bitcoin network. Blockchains solved the very complicated technological problem of having a bunch of distributed, disparate entities all agree on a rivalrous state of affairs (like how much money they owe each other).

- -

Like Bitcoin, the LBRY blockchain maintain balances -- in this case, balances of LBC, LBRY’s unit of credit. More importantly, the LBRY blockchain also provides a decentralized lookup and metadata storage system. The LBRY blockchain supports a specific set of commands that allows anyone to bid (in LBC) to control a LBRY name, which is a lot like a domain name. Whoever controls a name gets to describe what it contains, what it costs to access, who to pay, and where to find it. These names are sold in a continuous running auction. We will talk more about this system a little later on.

- -

If you’re a programmer, you might recognize the LBRY blockchain as a key-value store. Each key, or name, corresponds to a value, or a metadata entry. Whichever party or parties bid the most LBC gets to control the metadata returned by a key lookup.

- -

Here is a sample key-value entry in the LBRY blockchain. Here, wonderfullife is the key, and the rest of the description is the value.

-
-
-    wonderfullife : {
-      title: "It’s a Wonderful Life",
-      description: "An angel helps a compassionate but despairingly frustrated businessman by showing what life would have been like if he never existed.",
-      thumbnail: "http://i.imgur.com/MW45x88.jpg",
-      license: "public domain",
-      price: 0, //free!
-      publisher: "A Fan Of George Bailey", //simplification
-      sources: { //extensible, variable list
-        lbry_hash : <unique id>,
-        url : <url>
-      }
-    }
-
-

A slightly simplified sample entry of metadata in the LBRY blockchain. Whichever party or parties bid the most in an ongoing auction control what a name returns.

- -

Other than the usage of the LBRY blockchain to store names and metadata, there are only minor differences between the blockchains of LBRY and Bitcoin, and the changes are generally consensus improvements. We’ve buffed the hashing algorithm, smoothed the block reward function, increased the block size, increased the total number of credits, and prepared for offchain settlement.

- -

The LBRY blockchain simply maintains LBC balances and a content namespace/catalogue. The next part, LBRYnet, specifies what to do with this data. To compare to the existing web, the blockchain is like the domain system (it maintains a listing of what is available), while the next piece makes it possible to actually fetch and pay for content.

-
If you’re a Bitcoiner wondering why we don’t use the Bitcoin blockchain, you can read a detailed answer to that question here.
- -

Part B: The Data Network (LBRYNet)

-

LBRYNet is the layer that makes the LBRY blockchain useful beyond a simple payment system. It says what to do with the information available in the LBRY blockchain, how to issue payments, how to look up a content identifier, and so on.

- -

To use the LBRY network, a user’s computer needs the capacity to speak LBRY. That layer is LBRYNet. Just as your computer has a library that enables it to understand HTTP, DNS, and other languages and protocols, LBRYNet is the piece of software that allows your computer to understand how to interact with the LBRY network.

- -

To understand what role LBRYNet plays, let’s drill a little more into a sample user interaction. Once a user has affirmed access and purchase, such as in step 5 of our Sample Use above, the following happens:

- -
    -
  1. LBRYNet issues a lookup for the name associated with the content. If the client does not have a local copy of the blockchain, this lookup is broadcast to miners or to a service provider. This lookup acquires the metadata associated with the name.
  2. -
  3. LBRYNet issues any required payments, as instructed by metadata entries. -
      -
    1. If the content is set to free, nothing happens here.
    2. -
    3. If the content is set to have a price in LBC, the client must issue a payment in LBC to the specified address. If the content is published encrypted, LBRYNet will not allow access until this payment has been issued.
    4. -
    5. If the content is set to have another payment method, the seller must run or use a service that provides a private server enforcing payment and provisioning accessing keys.
    6. -
    -
  4. -
  5. Simultaneous to #2, LBRYNet uses the metadata to download the content itself. -
      -
    1. The metadata allows chunks to be discovered and assembled in a BitTorrent-like fashion. However, unlike BitTorrent, chunks do not individually identify themselves as part of a greater whole. Chunks are just arbitrary pieces of data.
    2. -
    3. If LBRYNet cannot find nodes offering chunks for free, it will offer payments for chunks to other hosts with those chunks.
    4. -
    5. This payment is not done via proof-of-bandwidth, or third-party escrow. Instead, LBRYNet uses reputation, trust, and small initial payments to ensure reliable hosts.
    6. -
    7. If content is not published directly to LBRY, the metadata can instruct other access methods, such as a Netflix URL. This allows us to catalogue content not yet available on LBRY as well as offer legacy and extensibility purposes.
    8. -
    -
  6. -
-
-
- \ No newline at end of file diff --git a/view/template/page/feedback.php b/view/template/page/feedback.php deleted file mode 100644 index 50b9d21c..00000000 --- a/view/template/page/feedback.php +++ /dev/null @@ -1,36 +0,0 @@ - - - false]) ?> -
-
-
-
-
-

- - -
-
-

- -
-
-
-
-
- - - $(function() { - var count = 0; - $('#feedback-form-iframe').load(function(){ - ++count; - if (count == 2) //2nd load = a submit - { - ga('send', 'event', 'Sign Up', 'Alpha Test'); - twttr.conversion.trackPid('nu2ye'); - fbq('track', 'CompleteRegistration'); - } - }); - }); - diff --git a/view/template/page/fund-after.php b/view/template/page/fund-after.php index f3b888be..60632e59 100644 --- a/view/template/page/fund-after.php +++ b/view/template/page/fund-after.php @@ -18,4 +18,4 @@
- + diff --git a/view/template/page/goals.php b/view/template/page/goals.php index b8d7a5f1..91892f9b 100644 --- a/view/template/page/goals.php +++ b/view/template/page/goals.php @@ -1,6 +1,6 @@ - false]) ?> + false]) ?>
@@ -39,4 +39,4 @@
- + diff --git a/view/template/page/home.php b/view/template/page/home.php index 0d1c7d4a..d7469c92 100644 --- a/view/template/page/home.php +++ b/view/template/page/home.php @@ -1,7 +1,7 @@
- true]) ?> + true]) ?>
@@ -50,7 +50,7 @@

- 'Go', 'listId' => Mailchimp::LIST_GENERAL_ID, 'mergeFields' => ['CLI' => 'No'], diff --git a/view/template/page/join-list.php b/view/template/page/join-list.php index f74403ba..b9317183 100644 --- a/view/template/page/join-list.php +++ b/view/template/page/join-list.php @@ -1,6 +1,6 @@ - false ]) ?> + false ]) ?>
@@ -9,7 +9,7 @@

- 'Subscribe', 'returnUrl' => '/join-list', 'meta' => true, @@ -23,4 +23,4 @@
- \ No newline at end of file + \ No newline at end of file diff --git a/view/template/page/learn-old.php b/view/template/page/learn-old.php deleted file mode 100644 index 6f05a6aa..00000000 --- a/view/template/page/learn-old.php +++ /dev/null @@ -1,70 +0,0 @@ - - - false]) ?> -
-
-
-
-

-
-
- - Screenshot of a LBRY browser - -
-

Puts on jargon hat.

-

- LBRY is a decentralized, censorship-resistant, open-source, peer-to-peer information marketplace and discovery protocol. -

-

Removes jargon hat.

-

- LBRY is a new way for people to publish and share content with each other. -

-

- Our goal is to provide a single box that allows anyone anywhere to find and purchase digital content from anyone else. -

-
- -
-
-
-
-
-
-

-
-

-

-

-

-

-
-
- -
-
- -
-
- Credit SMBC. -
-
-
-
-
-
-
-

-
-

-

-
-
- -
- <?php echo __('LBRY Founders') ?> -
-
-
-
- \ No newline at end of file diff --git a/view/template/page/learn.php b/view/template/page/learn.php index 160892d8..72c29d30 100644 --- a/view/template/page/learn.php +++ b/view/template/page/learn.php @@ -1,6 +1,6 @@ - false]) ?> + false]) ?>
@@ -121,4 +121,4 @@
*/ ?> - \ No newline at end of file + \ No newline at end of file diff --git a/view/template/page/press-kit.php b/view/template/page/press-kit.php index 4d8cb095..b52d4bec 100644 --- a/view/template/page/press-kit.php +++ b/view/template/page/press-kit.php @@ -1,7 +1,7 @@ - false]) ?> + false]) ?>
diff --git a/view/template/page/publish.php b/view/template/page/publish.php index 1a17a464..da6a468b 100644 --- a/view/template/page/publish.php +++ b/view/template/page/publish.php @@ -1,6 +1,6 @@ - false]) ?> + false]) ?>

@@ -44,4 +44,4 @@ width="760" height="1200" frameborder="0" marginheight="0" marginwidth="0">Loading...
- + diff --git a/view/template/page/team.php b/view/template/page/team.php index 9e00dffc..7206257b 100644 --- a/view/template/page/team.php +++ b/view/template/page/team.php @@ -1,7 +1,7 @@ - false]) ?> + false]) ?>

The Team

@@ -52,6 +52,6 @@
- +
- + diff --git a/view/template/page/what-old.php b/view/template/page/what-old.php deleted file mode 100644 index 53467ec4..00000000 --- a/view/template/page/what-old.php +++ /dev/null @@ -1,99 +0,0 @@ - - - false]) ?> -
-
-
-

A revolution in accessing and publishing information.

-
-
-
- -
-

- Hosts earn credits for providing bandwidth and disk space. -

-
-
-
- -
-

- Miners earn credits for securing balances and metadata. -

-
-
-
- -
-

- Patrons spend credits to access content without gatekeepers. -

-
-
-
-
-
-

What is LBRY?

-
-

LBRY allows anyone to publish content to a location like this:

-

lbry://wonderfullife

-

Others can access this resource, either for free or for credits. Let's look at an example:

-
    -
  1. Ernest wants to release his comedy-horror film, "Ernie Goes To Guantanamo Bay".
  2. -
  3. The content is encrypted and sliced into many pieces. These pieces are stored by hosts.
  4. -
  5. Ernest reserves lbry://erniebythebay, a shortname pointing to his content.
  6. -
  7. When Ernest reserves the location, he also submits metadata, such as a description and thumbnail. This information is stored by miners in the LBRY blockchain.
  8. -
  9. Hilary, a patron, browses the LBRY network and wants to watch the movie. - Her LBRY client collects the pieces from the hosts and reassembles them.
  10. -
  11. Hilary pays Ernest for the decryption key, allowing her to watch the film.
  12. -
-
-
-
-
-

If BitTorrent + BitCoin Had a Baby

-
-
- -

Decentralized Metadata

-

Information about content is embedded in a blockchain, eliminating centralized failure points. Metadata and data are completely decoupled so that hosts never see metadata and miners never see data.

-
-
- -

Marketized Data-Transfer

-

Patrons request content for free or offer credits for faster speeds or access. Hosts share or sell surplus bandwidth and disk space.

-
-
- -

Memorable URIs

-

- Publishers can choose friendly resource indicators like lbry://wonderfullife instead of ugly BitTorrent magnet URIs. - URIs are reserved rather than owned, creating strong incentive for rights holders to use LBRY. -

-
-
-
-
- -

Payments to Publishers

-

Publishers may embed an address to receive payment for data. Publishers can also create assurance contracts? for new content.

-
-
- -

Improved Privacy

-

LBRY uses novel techniques to protect publishers, providers, and consumers. - Hosts only have small portions of an encrypted file with no information of the contents. -

-
-
- -

Designed for Developers

-

LBRY is designed to allow others to create applications powered by it’s distributed, robust data store.

-
-
-
-
- -
- diff --git a/view/template/page/what.php b/view/template/page/what.php index 62490e6f..00a50e74 100644 --- a/view/template/page/what.php +++ b/view/template/page/what.php @@ -1,6 +1,7 @@ + - true, 'isAbsolute' => true]) ?> + true, 'isAbsolute' => true]) ?>

Art in the Internet Age

@@ -239,9 +240,9 @@

Build our dream with us. Download LBRY at lbry.io/get.

- +
- + Layer 1: Protocol diff --git a/view/template/page/why.php b/view/template/page/why.php deleted file mode 100644 index 50be6f4c..00000000 --- a/view/template/page/why.php +++ /dev/null @@ -1,107 +0,0 @@ - - - - false]) ?> -
-
-
-
-
-

If you made the music, and you made the art, and you put it into the world, I should be able to use it. I'ma pay you, I'ma give you a percentage, but... you was inspired by the world; allow the world to be inspired by your [work] and to use your [work].

-
- J. Cole, Note to Self -
-
-
-

Why?

-
-

The World We Live In

-

Annual internet video traffic is approximately 500 exabytes (500,000,000,000 GB)1. - Every second, over 10,000 hours of video are streamed. - The technical term for the quantity of videos people watch every year is a million jillion. You know this.

- -

What you may not know: video distribution is fundamentally flawed.

-

- The fatal flaw of existing systems is their centralized, top-down design. The consequences: -

-
    -
  1. Increased costs to consumers. Providers bear significant infrastructure costs, regulatory and compliance costs, - and must create complex systems to govern a simple process (copying a number).

  2. -
  3. Terrible consumer experience. - Centralization leads to fragmentation, as providers compete to lock numbers in digit dungeons.

    -
  4. -
  5. -

    Poor producer experience. - The primary want of a producer is to be paid for making things. Instead, producers frequently lose control of their content and - lose profits to the inefficiency of current systems.

    -
  6. -
-

Similar issues of economics and experience exist for consumers and producers of information of all kinds (e.g. news, facts), not just videos.

- -

LBRY solves these problems and throws in some other sweet innovations just for funsies.

-
-
-
-
-
-

Information is power.

-

But like all power, there are those who want to keep it for themselves. -

- Aaron Swartz -
-
-
-
-

An Alternative

-

LBRY avoids the mistakes of centralization and middlemen. It says:

-
    -
  1. -

    - Information isn't a thing - Things are physical and exist in the world. When I have a thing, you can't. Economists call this rivalry?. -

    -

    - Information is non-rival. Information is just a number. There is nothing easier to replicate than information. - LBRY embraces (and adores) this reality. -

    -

    - LBRY breaks information into thousands of identifiable tiny pieces and spreads them throughout the internet, reducing costs - for both providers and consumers. -

    -
    - XKCD #1228 Prometheus - -
    -
  2. -
  3. -

    - Connecting creators and consumers directly is best. - Do we need middlemen spending billions to extract their rent and police others? - A better system allows consumers to easily and directly pay content creators. - We want to eliminate extortionists charging tolls. -

    -

    - On LBRY, publishers sell directly to patrons. Publishers can charge a set fee per decryption key for content or create an assurance contract for unpublished content. -

    -
  4. -
  5. -

    It's Up to Us. A smart guy once said that power corrupts and absolute power corrupts absolutely.

    -

    - LBRY leaves no one in charge (including us). It puts power in the hands of individuals and users rather than corporations and executives. -

    -

    We think that world will be more creative, more charitable, and more fair. We hope you'll join us in creating it.

    -
  6. - -
-

What LBRY Isn't

-

LBRY's fully decentralized nature makes restricting content impossible. Since LBRY also aims to unseat gigantic, established media players, - we fear it may attract undeserved legal attention. So we'd like to be clear from day one:

-

- LBRY is not about facilitating piracy. - LBRY is about creating a network where creators and patrons can directly interact without relying on anyone in the middle. We've made choices - about publisher identities and how addresses are reserved that are specifically designed to combat undue profiteering.

-
- -
- -1.

*/ ?> diff --git a/web/scss/_blog.scss b/web/scss/_blog.scss index 4e9d2c84..d9d9b749 100644 --- a/web/scss/_blog.scss +++ b/web/scss/_blog.scss @@ -96,6 +96,7 @@ margin-left: auto; margin-right: auto; max-width: $max-post-content-width; + margin-bottom: $spacing-vertical * 2; a[href] { @include anchor($color-primary);