Profile

Cover photo
Jeffery yuan
Works at Sony
Attended Tongji University
Lives in New Jersey
2,599 followers|902,659 views
AboutPostsCollectionsPhotosVideos+1'sReviews

Stream

Jeffery yuan

Shared publicly  - 
 
The Eight Fallacies of Distributed Computing
The network is reliable.
Latency is zero.
Bandwidth is infinite.
The network is secure.
Topology doesn't change.
There is one administrator.
Transport cost is zero.
The network is homogeneous.
https://www.youtube.com/watch?v=JG2ESDGwHHY
http://en.wikipedia.org/wiki/Fallacies_of_distributed_computing
1
Add a comment...

Jeffery yuan

Shared publicly  - 
 
A blind Google engineer explains how he writes code
http://www.businessinsider.com/how-blind-google-engineer-writes-code-2015-5
1
Add a comment...

Jeffery yuan

Shared publicly  - 
 
How about Java8 on Android on Google/IO?
1
Add a comment...

Jeffery yuan

Shared publicly  - 
 
Hashmap change in Java 8: Using binary search tree when greater than TREEIFY_THRESHOLD
The principal idea is that once the number of items in a hash bucket grows beyond a certain threshold(currently: TREEIFY_THRESHOLD = 8), that bucket will switch from using a linked list of entries to a balanced tree. In the case of high hash collisions, this will improve worst-case performance from O(n) to O(log n).
http://openjdk.java.net/jeps/180
If hashes are equal, HashMap hopes that the keys are Comparable, so that it can establish some order. 
http://java.dzone.com/articles/hashmap-performance
http://examples.javacodegeeks.com/core-java/util/hashmap/hashmap-changes-in-java-8/

a shared underlying storage
Shared empty table in ArrayList and HashMap update
http://java-performance.info/core-java-7-change-log/

static final Object[] EMPTY_ELEMENTDATA = {};
Author, Mike Duigou. Owner, Brent Christian. Created, 2013/02/08 20:00. Updated, 2014/07/10 20:15. Type, Feature. Status, Completed. Component, core-libs. Scope, Implementation. Discussion, core dash libs dash dev at openjdk dot java dot net ...
1
Add a comment...

Jeffery yuan

Shared publicly  - 
XML External Entity (XXE) Processing. From OWASP. Jump to: navigation, search. This is a Vulnerability. To view all vulnerabilities, please see the Vulnerability Category page. Last revision (mm/dd/yy): 03/10/2015. Vulnerabilities Table of Contents ...
1
Add a comment...

Jeffery yuan

Shared publicly  - 
 
Slate: Gorgeous, Algorithmically Generated Time-Lapses of the World's Most Popular Landmarks. http://google.com/newsstand/s/CBIwm6TF9BI
Time-lapse photography is fascinating because it can reveal changes that transpire too gradually to observe in real time.  The problem is that, well, it takes a long time. Researchers from Google and the University of Washington have found an elegant way around that, at least for some of the world’s...
1
Add a comment...

Jeffery yuan

Shared publicly  - 
 
Lucene/Solr Search Similarity
tf(t in d) correlates to the term's frequency, defined as the number of times term t appears in the currently scored document d. Documents that have more occurrences of a given term receive a higher score. 
Math.sqrt(freq)

idf(t) stands for Inverse Document Frequency. This value correlates to the inverse of docFreq (the number of documents in which the term t appears). This means rarer terms give higher contribution to the total score
Math.log(numDocs/(double)(docFreq+1)) + 1.0

Query Coordination
coord(q,d) is a score factor based on how many of the query terms are found in the specified document. Typically, a document that contains more of the query's terms will receive a higher score than another document with fewer query terms. - computed at search time
overlap / (float)maxOverlap

The coordination factor (coord) is used to reward documents that contain a higher percentage of the query terms. The more query terms that appear in the document, the greater the chances that the document is a good match for the query.

queryNorm(q) is a normalizing factor used to make scores between queries comparable. This factor does not affect document ranking (since all ranked documents are multiplied by the same factor), but rather just attempts to make scores from different queries (or even different indexes) comparable.
1.0 / Math.sqrt(sumOfSquaredWeights)
The sumOfSquaredWeights is calculated by adding together the IDF of each term in the query, squared.

t.getBoost() is a search time boost of term t in the query q as specified in the query text

Index-Time Field-Level Boosting
We strongly recommend against using field-level index-time boosts

norm(t,d) encapsulates a few (indexing time) boost and length factors:
Field boost - set by calling field.setBoost() before adding the field to a document.
lengthNorm(Field-length norm)- computed when the document is added to the index in accordance with the number of tokens of this field in the document, so that shorter fields contribute more to the score. LengthNorm is computed by the Similarity class in effect at indexing.

DefaultSimilarity extends TFIDFSimilarity
Boolean Model
Vector Space Model
https://lucene.apache.org/core/5_1_0/core/org/apache/lucene/search/similarities/TFIDFSimilarity.html
https://www.elastic.co/guide/en/elasticsearch/guide/master/practical-scoring-function.html
Implementation of Similarity with the Vector Space Model. Expert: Scoring API. TFIDFSimilarity defines the components of Lucene scoring. Overriding computation of these components is a convenient way to alter Lucene scoring. Suggested reading: Introduction To Information Retrieval, Chapter 6.
1
Add a comment...

Jeffery yuan

Shared publicly  - 
 
7 Mistakes You’re Making In Your Programming Career
1. Not having a clear goal

2. Not investing in non-technical or “soft skills”
people skills, mental stability, focus and self-motivation
how to prioritize and how to be as productive as possible
health and fitness, financial acumen

3. Not being part of the community
Being part of something larger than yourself, is a sure way to grow.

4. Not specializing
5. Not investing in your personal brand
6. Not working on a side-project

7. Not having a plan for self-education or continuous self-improvement.
http://simpleprogrammer.com/2015/05/18/7-mistakes-youre-making-in-your-programming-career/
One of the most popular software development blogs with original content focused on helping developers become better by breaking apart the complex part of software development and making them simple.
1
Add a comment...

Jeffery yuan

Shared publicly  - 
Confused about EdgeRank? Learn about Facebook's famous newsfeed algorithm, including several advanced tips to reach more fans.
2
Add a comment...

Jeffery yuan

Shared publicly  - 
 
CNET: LG Display shows off press-on 'wallpaper' TV under 1mm thick. http://google.com/newsstand/s/CBIwtY-r9R8
1
Add a comment...

Jeffery yuan

Shared publicly  - 
 
The Twelve-Factor App
VI. Processes
stateless and share-nothing
Sticky sessions are a violation of twelve-factor and should never be used or relied upon. Session state data is a good candidate for a datastore that offers time-expiration, such as Memcached or Redis.

VII. Port binding
VIII. Concurrency

IX. Disposability
The twelve-factor app’s processes are disposable, meaning they can be started or stopped at a moment’s notice. 
all jobs are reentrant, which typically is achieved by wrapping the results in a transaction, or making the operation idempotent.

X. Dev/prod parity
XI. Logs: Logplex and Fluent, Splunk
XII. Admin processes
http://12factor.net/
A methodology for building modern, scalable, maintainable software-as-a-service apps.
1
Add a comment...

Jeffery yuan

Shared publicly  - 
 
A mother has been arrested in Georgia for her son's 3 unexcused absences from school. This is what public education looks like in a police state.
1
Add a comment...
Jeffery's Collections
People
In his circles
4,136 people
Have him in circles
2,599 people
David Valle Cruz's profile photo
Rubén García's profile photo
Kingsley king's profile photo
John Carter's profile photo
Nyon Wang's profile photo
David Belliveau's profile photo
Max Stirner's profile photo
aditya koneru's profile photo
Marco “Nip” Nicastro's profile photo
Work
Occupation
Software Engineer
Skills
Java, Linux, Web Development(Jquery, Bootstrap, Javascript, CSS), Solr/Lucene/Nutch, Hadoop, Python, C#, Shell(Bash and bat), Google App Engine, Android, Eclipse(RCP, Plugin Development), Database(MySQL)
Employment
  • Sony
    Senior Software Engineer, 2015 - present
    Bug Data: Spark/Cassandra/Lucene/Solr
  • CommVault Systems
    Senior Software Engineer, 2012 - 2015
    Using/Extending Solr/Lucene for enterprise search. Using/Extending Nutch2/Solr for website crawle and search.
  • EMC Corporation
    Senior Software Engineer, 2011 - 2012
    Java Web Services and CMS
  • IBM
    Software Engineer, 2008 - 2011
    Storage, J2SE, Python
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Currently
New Jersey
Previously
Shanghai
Story
Tagline
Senior Developer, Tech passionate, Geek, Dreamer, I am nobody famous nor rich, just like coding and yearn for freedom
Introduction
I am interested in Linux, Java, Solr, Search, Algorithm, am contributing to 
Bragging rights
I consider myself well versed in these skills: Java, Web development, Linux, MySQL, interested in algorithm, high-level design.
Collections Jeffery is following
Education
  • Tongji University
    Software Engineering, 2005 - 2008
Basic Information
Gender
Male
Looking for
Friends, Networking
Relationship
Married
Jeffery yuan's +1's are the things they like, agree with, or want to recommend.
Failing at Google Interviews - Alex Bowe
alexbowe.com

Good advice to help you kick ass during your Google interview, and why you will benefit from the process even if you fail. Practical for eve

Chromebook craze won't abate this year
www.pcworld.com

Chromebooks could however face competition from low-cost Windows 8.1 and Windows 10 devices.

More Than 7 Million Chromebooks Will Be Sold This Year - OMG! Chrome!
www.omgchrome.com

Chromebook sales will hit 7.2 million in 2015, according to industry experts. More than 5 million Chromebooks were sold in 2014, predominate

Vertex Cover Problem | Set 1 (Introduction and Approximate Algorithm) - ...
www.geeksforgeeks.org

A vertex cover of an undirected graph is a subset of its vertices such that for every edge (u, v) of the graph, either ‘u’ or ‘v’ is in vert

JSR 310 - Java 8 Date/Time library performance (as well as Joda Time 2.3...
java-performance.info

This article gives you an overview of the new Java 8 date/time classes, a.k.a. JSR-310, and compares them with Joda Time and j.u.Calendar.

Core Java 7 Change Log - Java Performance Tuning Guide
java-performance.info

All performance related changes in core Java JDK 7 updates will be listed here.

Endeca Presentation API class diagram
10-99.blogspot.com

Endeca presentation API is a huge object graph with multitudes of navigation paths and objects. I managed to compile the following class dia

Micro Services: A Simple Example | Javalobby
java.dzone.com

In our code base we had the concept of a ‘ProductSpeed’ with two different constructors which initialised the object in different ways:publi

Cloud Computing Applications - University of Illinois at Urbana-Champaig...
www.coursera.org

Cloud Computing Applications from University of Illinois at Urbana-Champaign. Take free online classes from 115+ top universities and educat

+Charlotte Banks
www.geeksnack.com

The Google Nexus 5 of 2013 is still one of the best smartphones on the Planet, and that's according ...

Topological Sorting - GeeksforGeeks
www.geeksforgeeks.org

Topological sorting for Directed Acyclic Graph (DAG) is a linear ordering of vertices such that for every directed edge uv, vertex u comes b

New Video Player App Coming to Chrome OS - OMG! Chrome!
www.omgchrome.com

Chromebook owners rejoice: a new, standalone video player app is coming to Chrome OS.

Graph Coloring | Set 2 (Greedy Algorithm) - GeeksforGeeks
www.geeksforgeeks.org

We introduced graph coloring and applications in previous post. As discussed in the previous post, graph coloring is widely used. Unfortunat

Graph Coloring | Set 1 (Introduction and Applications) - GeeksforGeeks
www.geeksforgeeks.org

Graph coloring problem is to assign colors to certain elements of a graph subject to certain constraints. Vertex coloring is the most common

Check whether a given graph is Bipartite or not - GeeksforGeeks
www.geeksforgeeks.org

A Bipartite Graph is a graph whose vertices can be divided into two independent sets, U and V such that every edge (u, v) either connects a

Ropes: Twining Together Strings for Editors
scienceblogs.com

It’s been a while since I’ve written about any data structures. But it just so happens that I’m actually really working on implementing a re

Java Program to Implement Rope - Sanfoundry
www.sanfoundry.com

This is a Java Program to implement Rope. A rope is a data structure for storing and manipulating a very long string. Here is the source cod

Lindsay Lohan Has A Plan To Stay Out of Jail, But Can She Stick To It?
www.inquisitr.com

The clock is ticking, and controversial actress Lindsay Lohan is running out of time to complete her community service. As previously report

Circloscope
chrome.google.com

Circloscope is the most powerful way to manage your Google+ Circles! (Not affiliated with Google)

Food: GoodDecor: GoodService: Good
Public - 2 years ago
reviewed 2 years ago
nice place.
Public - 2 years ago
reviewed 2 years ago
2 reviews
Map
Map
Map