Showing posts with label coaching. Show all posts
Showing posts with label coaching. Show all posts

Saturday, June 2, 2018

Netflix's Viewing Data - System design study

June 2, 2018

Introduction


I plan to spend 20 - 30 minutes to read the article and then I like to have some discussion with my coach about this article and learn how to understand system design article.

Taking notes first


Being a good student, I need to learn how to read the article carefully. Take some notes first. I like to do something small, and also start from there.

Here is the article link.

Netflix Microservices Talk


Please watch the video 48 minutes called Microservices at Netflix Scale: Principles, Tradeoffs & Lessons learned. R. Meshenberg

Pdf link is here.


Thursday, May 31, 2018

Sleepless in Bejing and early bird in Vancouver

May 31, 2018


Introduction


How can two people meet with such busy work and life? A young graduate will sacrifice sleep and meet 11:00 PM to 1:00 AM in Beijing, and an early bird in Vancouver will get up before 7:30 AM and prepare to be coached for three weeks drill. I think that the blog should definitely be called "Sleepless in Beijng and helps early bird in Vancouver".

It is such great experience to have a series of mock interviews from May 12 to May 31, 2018. We have met over 8 times in total connecting from Beijing to Vancouver. I could not believe that it is such an enjoyable thing to do. I will write down a few things I learn through the series of mock interviews.


Good partnership


I know that a good coach will work with different players. I enjoy the time to work with my coach. I start to know his personality and also very good hard working stories now. My coach is cool as the youngest tennis coach Daniel Vallverdu  who coaches ten 10 ATP player Dimitrov.

I always follow tennis professional players, one of favorites, Safarova, and think about getting a coach like Rob Steckley. My research topic is similar to surviving after 30. One practice I am done!



First blog:

Introduction to get help from a coach is written in a blog called special three weeks drill.


836 minutes working together


It is definitely a big number, 836 minutes, close to 14 hours. There are eight mock interviews in total up to May 29, 2018.


First interview ( 71 minutes)

Detail see my blog called first mock interview from my coach.


Second interview (108 minutes)

Minimum cost using dynamic programming - mock interview

The transcript is here written in mock interview. And the code is written after the contest.

Find least number of perfect square, the blog is here.



Third interview (101 minutes)

Next large element in the array, the blog is here.

Height of tree, the blog is here.


Fourth interview (114 minutes)

The mock interview is documented here. The algorithm is called ....


Fifth interview (124)

find string s2 containg s1 permutation, the blog is here.


Sixth interview (105 minutes)

Suggest a char with maximum occurrence at the position with the given prefix. The blog is here.

breadth first search algorithm - processed by layers. The blog is here.


Seventh interview (96 minutes)

union find algorithm is documented here.


Eighth interview (116 minutes)

Leetcode 91 Decode ways is documented here.

Isomorphic strings is documented here.

Extra algorithms discussed:


1. Second mock interview

My past practice on dynamic programming is here. Manhantan 2 booking woman is the algorithm to apply dynamic programming.

2. Ask code review for my mock interview performance on trapping rain water.

3. Discussion about hard level algorithm maximum disjoint subtree product




Saturday, January 6, 2018

Leetcode 18: 4 sum

January 6, 2018

Introduction


I had a mock interview at 10:00 PM in May 5, 2018. I learned some JavaScript from the peer, but also I had to learn how to help the peer write a brute force solution using JavaScript. I had to write down the four loops and then also write the start index for each loop for the peer.

Brute force four loops


It is the first time I had to show the peer how to write brute force solution using four for loops. And also it is my job to fix the start index for the peer as well.

I made the comment to remove the line beside a while loop, and then line 12 to line 15, I changed the start index to i + 1 instead of 0, likewise to apply k and l.

Code to review


Here is the JavaScript code written by the peer in JavaScript, passing all test cases on mock platform. It is also a brute force solution.

I have to learn how to help the peer write a brute force solution first, and then let the peer understand the solution and get the good feelings to solve the problem.




Sunday, April 30, 2017

Talent small talk

April 30, 2017

Introduction 


It is a very happy weekend with a world codesprint contest and then two mocking experience. Julia also spent one hour to play some tennis and felt much better after she ran 30 - 45 minutes, she was amazed that her muscle memory of tennis was so good, she could control tennis balls so well through a full court rally. She enjoyed the sliced shot and very good timing and control of landing position to hit a stroke.

She also felt that it is important to seek the advice to be a just-so-so contest player scoring 36 points over 13 hours compared to top players scoring more than 280 in less than 2 hours. Read those data - less than one hours 10 minutes, top number 1 - Gennady.




What are the missing parts she should work on next?

A lot of professional WTA tennis players are very good at changing coaches when they deal with up-and-downs. What does Julia do for this case? Should she change her coach? She is self-coaching and writing blogs to keep tracking of her progress.

Need a therapy after the contest. Remember the favorite video she watched about Roger Federal talking about his early age, throwing tennis racquet in front of thousands fans. Take some time to learn from Roger Federer.

Watch this video to get entertained. Roger Federer - top 10 smiling after points lost, link is here.

Talent talk 


Where is the talent? I like to find some drills to work on to help myself to cover the weakness of talent. 

Watch the video - tennis funniest moments ever. Link is here. And read the article - waste time is healthy in big data term, link is here

Data structure talk 



Julia met a same person for the second time in less than 30 days through mocking experience, and then she learned a few things through 30 minutes. Friendship forms quickly after the first experience.

Case 1: She likes to design a data structure to return a list of pair integer numbers in the array, she said that since it is the unknown size, she likes to declare C# IList<string>, and then "why it is string?" The peer asked, Julia said that because there are two numbers, I like to encode and decode like a + b; otherwise I like to use Tuple<int, int>, the peer just typed that you just use this one IList<int[]>.

Julia never uses this one before, but it is so good ride once she uses it. Story is short, better give a good name "int[] beats string".

Case 2: Julia likes to change HashSet to a Dictionary<int, Object>, and then the peer asked, can you make a minor change to fit the requirement; Julia was told to finish the coding, and do a whiteboard testing using a test case. Do mocking algorithm really need Dictionary that complicated?

Through the discussion, Julia learned that it is a good practice to write simple code. Be more organized!

Transcript is here. Later it will be compiled to C# code.

Recurrence formula talk 



It comes out that the recurrence formula is challenging for those 3  talented programmers in the world last weekend. In other words, Julia used the same algorithm to interview two people last weekend.

Her first interviewee was troubled, confused, since the problem statement is wrong, and Julia had difficult time to step in and give good hints to guide, since Julia had a math degree but it is like the muscle to fat story, she also got confused on recurrence formula in those 30 minutes. But then second time to use the algorithm, Julia was more determined to apply recurrence formula, no more playing with test cases. Just write down clearly the formula first.

The interviewee is much quickly to take hint, and then write code. She felt those two difference. Less experienced one is much more easy to try new things.


Also Julia learned the algorithm quickly, when she interviewed second person using same algorithm, she wants to make the difference. She learned that good interviewer should do something to help out. 

Whiteboard technique



From the contest to the leaderboard by Microsoft to a blog writer -

Google intern and interview blog is here. Whiteboard talk is excellent.

Bronze medal talk



It is the time to celebrate Julia’s fifth bronze medal, Julia got a bronze medal for world codesprint 10. How to express the feeling of bronze medal? Julia likes the hard work she put in those hours, and she did so much work and tried again and again for new ideas to break through the hurdles. She is more experienced to play contests now compared to last year.

Julia takes time to enjoy her status right now, one day she will easily make over 30% or over 100 points and come back to look at the stage she is in. Honestly the contest is like school home work, and bronze medal is for Julia to celebrate a grade “C”, but she tries to get grade B – silver medal, one day she can get grade A. Julia scored 36 point (360 maximum points), 10% scoring. 


Julia likes the competition because it is fair, open and her peers are all over the world. Compared to take algorithm course in university to learn more, she does not need to figure out who is the professor in the university, fair or not fair on grading. All she has to do in the competition is to work damn hard, write down something, either a blog, or code or analysis. Dedicate a few hours on each algorithm in the contest. From there she can continue to work on after the contest. 

Psalm 126:5 Those who sow with tears will reap with songs of joy.
6 Those who go out weeping, carrying seed to sow, will return with songs of joy, carrying sheaves with them.

Julia sowed, teared, reaped, sung, weeped, carried.

Follow up on data structure talk 


In previous data structure talk, Julia shared the story about mocking experience. The peer coached her to use int[] instead of using string or Tuple<int, int>. Such a wonderful coaching through mocking experience.

Afterwards, Julia asked her favorite algorithm coach JS1 on code review about using int[] data type compared to string related to Queue. Here is the algorithm question on code review. 

do you think that it is also good idea to declare var queue = new queue<int[]>? row and col can put into the array new int[2]. Therefore, we do not need to encode a key and then decode the key to row and col two variables. I am learning data structure and try to speed up coding. – Jianmin Chen

It's a matter of preference. I tend to use primitive types whenever possible, but if using int[] seems easier to understand than using a single int, then you should do that. Note that using a single encoded int leads to a simpler visited array as well. – JS1 

Sunday, January 8, 2017

Tennis coaches and their sharing of teaching

January 8, 2016

Introduction

Julia starts to show strong interest on tennis coaches study after she wrote her first post about tennis coach Rob Steckley on Dec. 26, 2016. Specially, when she experienced the nervousness to prepare a 75 minutes coding assignment and rushed to find help, she knew that sometimes she let nervousness take over, domino effect may happen, because she is still a weak player without strong disciplines and a lot of trials and errors. Algorithm player and tennis sports are two sports Julia trains herself hard.

Julia knew that she had weakness on her English skills, she has to push herself write down something every day; and also, recently, she likes to clean out the blog page content, for example, do not show link url instead of showing some interesting context, pay attention to small detail, specially after she starts to learn aesthetics in design,  read the book the art of readable code (Part I. Surface-Level Improvements - chapter 4: Aesthetics); she learned a few things from stackexchange.com code review, when her posts were edited by various people.

Patrick Mouratoglou and Darren Cahill US open interview, Julia chose to study the interview again, and this time, she likes to document the coach's talk, how coaches help tennis player express the anger in the match, and how to relate to her own experience in sports and also in competition of software programming contests.

Workout 

Julia has to pay attention to her English skills, and then work on small task once a while. Take down notes from the coaches, and continue to do some research.

Will spend one hour to take notes first. Will come back very soon.

1:58pm
Darren Cahill:
Former coach of Agassi & Hweitt
1988 US Open Semifinals
Current coach of Simona Halep

Simona threw the racket - how did coach guide her on releasing her anger properly?
Consistency, consistency in the training. Consistency in the game plan, then be able to evolve as a tennis player as well, not stick to one thing at all; If something is not working, you have to find other ways to win in tennis matches. At the beginning to work with Simona, if something is not working, then bring out domino effect, a lot of loss of points afterwards, affect the game. She is doing much better right now, isolate that thing, move to something working.

In perfect world, no to Simona's action to throw racket on the ground. You want the player to keep those emotions inside. But she is Romania, she has a fire in the belly. They like to express themselves, especially Simona. And my biggest issues are if you do get angry, that is fine. But do not filter through next 2, 3 points, and let games get away from you. But we just need to get her a few rackets.






Saturday, August 20, 2016

Confidence and determination coaching - Nishikori Kei and his coach

August 20, 2016

Review Nishikori and his coach's video.
https://www.youtube.com/watch?v=LfoYUQIsrg4&feature=youtu.be

Nishikori: 
Not tall, ...

Coach's talk:
You are a little bit smaller, but ability to cover more court, quicker. Use speed to be many many advantages.

Early in the career, have a book, write down who to play with, write down strength/ weakness, why I lose, be prepared, be smart; It is not hitting a good forehand or backhand; Tennis, at the end of day, it is to find the way to win.

People interviewed you before the final match, you told that you admired Roger Federal.

First of mistake, not ready in mental to play final. Your opponent should not be your admire.  A great achievement to play final; admire Roger Federal, should be off the court.

Mentality and determination:
But, you are in my way. I do not care about what you have accomplished, prior achievements, no matter whoever is, find the way to beat the guy.

More videos to watch:
1. https://www.youtube.com/watch?v=s36vSwgn9A0
2. https://www.youtube.com/watch?v=fQBTvSqpRCI
3. https://www.youtube.com/watch?v=zMokexfhTIY
4. https://www.youtube.com/watch?v=mBluyNvnSlc
IMG - how to build a champion?

Most favorite coaching - on-court coaching:
1. https://www.youtube.com/watch?v=zfZGX_f3BOs

Coach - great motivator/ ...
2. https://www.youtube.com/watch?v=g-wKFSkHl3Q
3. https://www.youtube.com/watch?v=2REF6qaUSG4#t=93.0502
4. https://www.youtube.com/watch?v=iK6MMYnNr-M

5. Novak Djokovic
https://www.youtube.com/watch?v=9rHV9nDGHXM