> "Most of my friends at Google work four hours a day. They are senior engineers and don't work hard. They know the Google system, know when to kick into gear. They are engineers, so they optimized the performance cycles of their own jobs," one engineer described.
> Imagine two plants growing side by side. Each day they will compete for sunlight and soil. If one plant can grow just a little bit faster than the other, then it can stretch taller, catch more sunlight, and soak up more rain. The next day, this additional energy allows the plant to grow even more. This pattern continues until the stronger plant crowds the other out and takes the lion’s share of sunlight, soil, and nutrients.
> What is the hardest technical problem you have run into?
I never seem to find a quick good answer for this.
Maybe I just almost never work on REAL hard things.
So my question to you, HNers, is :
What is the hardest technical problem YOU have run into?
I am really interested to know what you would consider 'hardest'..
It's probably not going to be something like 'I changed the css property value from "display: block" to "display: inline-block"..'
> I was once asked to basically create a clone of Yelp in a week
That's just unfair, inconsiderate and unsustainable, and is also a red flag (ie: I would not go to that company).
Giving up a week of your life for an interview ?
and for free ?
And most importantly -
what if ALL companies did this ? you would have to spend months working from home, for free, just to get to the next level of the hiring process .
I don't know what the solution IS, but I know for sure that it IS NOT a 1-week work-from-home-for-free task .
(edit:formatting and some grammar)
Edit2: people will actually pay good money for a yelp (or craigslist/etc/etc) clone on places like upwork.
And they asked you to do it for free .
if there's enough space for an expanded search bar - there's no point, in my opinion.
But for example - on map based apps I would personally prefer to have the map with as little distractions (icons, buttons,text inputs, labels) as possible.
In Google's Android Chrome the url box is hidden once you start scrolling down.
I like that . And they probably have the data to show you that other people like that as well, because this 'hide-when-scrolling-down' feature is there at least a year or so, If I remember correctly.
Don't do what specifically ?
and why not ?
and what should I do instead ?
All of these answers are missing in your comment.
WhatsApp is doing something quite similar - displaying a small search icon.
When you click on it - the search box expands to 100% (with animation, of course) and the keyboard input pops up.
> This bug is subject to a 90 day disclosure deadline. If 90 days elapse
without a broadly available patch, then the bug report will automatically
become visible to the public.
Is this a common pattern in the bugs world ? publicizing a critical bug after 90 days of no response ?
you can let him use the full-length search bar for more than once before you minimize it.
for example : show him the full-length for the first 5 times, and only then start showing the little one.
Also, every time (for the first 5 times) that he clicks on the 'submit search' button/icon - make an animation that will minimize it, allowing him to see how it actually becomes smaller and more compact.
Also, when you get to the point of showing only the minimized search box - you can show him an animated tool top that will point to the small button. Again, you can do that only on the first X attempts .
Also, you can track and analyze the 'learning success rate' of your users. If they actually keep forgetting how/where to look for the search button (after they made x successful search attempts) - then YOU are probably right.
But this requires to be more data driven - try something and then measure its ssuccess etc.
After a few attempts you should (hopefully) see one way of doing it that is by far more effective than the others. But again - this requires data analytics.
a: first x visits (or first visits until the first click on the search box, which means the user now knows it's there)
b. all the rest of the visits after he tried it for the first time
explanation:
a.on the first x visits, or until the user REALIZES that there is a search box - try making it extremely visible. even a blinking animation for a few seconds might do the trick.
another nice thing is to animate a text, char-by-char .
I have done this on android apps and it even looks sexy to the eye (like those old games)
Try to get his attention to the search box at any means possible.
b. once the user actually realized that there is a search box and he actually tried to use it - he is now educated. he knows there's a search box.
In this case, you can minimalize your search box to a tiny search button.
remember - the user already knows it's there. if he needs it - he'll know where to find it
* if the reducers/actions/action creators/action types/sagas are UNIQUE to the component and are not being used elsewhere then it should sit together in the same folder .
* if they are more generic/being used in more than one place then I would put them all in a separate folder, since all of those parts are actually doing more or less one thing - manage a specific sub-section of your app's state.
This sub-section of your app's state can then be shared by many more than one entry point, which is extremely useful for me.
A REAL example:
I took the redux-login-saga-flow (https://github.com/sotojuan/saga-login-flow/tree/master/app),
changed the folder structure so now i can just import the login state management into every entry point i want, and bam - it just works, since all of that state sits under 'login'.
I can now create a new webpage and add all of the login complexity in only a few minutes of work .
Is this really prevalent at Google?
edit:quotes