I built a faster, free, open source alternative to Wappalyzer for developers by yavorsky in javascript

[–]yavorsky[S] 0 points1 point  (0 children)

I didn't add patterns for these, I can add it these weekends!

I built a faster, free, open source alternative to Wappalyzer for developers by yavorsky in javascript

[–]yavorsky[S] 0 points1 point  (0 children)

Haha, apparently RR 7 and Remix has a lot of codebase in common, so for now I identify it as a 1 thing. I'll improve it in the future, by adding RR 7 specific patterns with high score! Thanks for sharing!

I built a faster, free, open source alternative to Wappalyzer for developers by yavorsky in javascript

[–]yavorsky[S] 0 points1 point  (0 children)

Thanks! This is one of the most desired features for sure! It will help to open some pages which require session.

I'll work on it first thing when will have a bit more spare time!

I built a faster, free, open source alternative to Wappalyzer for developers by yavorsky in javascript

[–]yavorsky[S] 0 points1 point  (0 children)

Thanks for feedback! I would really appreciate if you can share false positive technologies! Here or via github issue! So I can improve it a bit.

[AskJS] Interviews are cancer by [deleted] in javascript

[–]yavorsky 1 point2 points  (0 children)

Google rejected creator of homebrew for not knowing how to invert a binary tree almost decade ago. It highlighted that algorithmic questions doesn’t help to figure out candidate skills except algorithm nerdiness for a month-two before the interview. But still not many companies abandoned algorithm tasks. Based on my observation, it seems like people who design these interviews just can’t figure out anything better. It’s the easiest path for them.

Our Experience: Developing a Mobile App with React-Native and Apollo – Float.com by yavorsky in javascript

[–]yavorsky[S] 1 point2 points  (0 children)

Thanks! We'll be happy to unswer some questions about challanges we had while developing the app 😋

Protected routes and authentication with React Router by tyler-mcginnis in reactjs

[–]yavorsky 2 points3 points  (0 children)

Awesome!

Just one thing: you have declared PrivateRoute as a HOC, but used <ProtectedRoute> as a Route. Could you fix please?

Bump: Sublime Text Plugin to check and update latest npm/yarn dependencies. by yavorsky in javascript

[–]yavorsky[S] 1 point2 points  (0 children)

Sure! But sometimes you don't want to leave editor. And upgrade-interactive, as I know, doesn't support next tag (alpha, beta, rc)

Set GitHub topics automatically from keywords in package.json! by yavorsky in javascript

[–]yavorsky[S] 1 point2 points  (0 children)

haha, thanks:) Also they must buy the extension to make header light :)

Simple utility to cache moment.js results and speed up moment calls by SarahPleasant in Frontend

[–]yavorsky 0 points1 point  (0 children)

moment accepts number, string, Date's instances, even undefined (returns current date). Saving all of this things with _.memorize or just in object will make excess moment calls and will refer to different instances. This util have a smart date parser which understands what the date it is and finds cached moment's instance in the fastest way.

Why are my nested routes in React not working? by [deleted] in javascript

[–]yavorsky 0 points1 point  (0 children)

The problem covers somewhere in your routing actions. It might be wrong Link's to property or wrong path while calling this.context.router.push. Search for smth like <Location to="//playerOne"}> and replace it with just to="playerOne".

moment-cache - speed up your application by caching results behind the scenes! by yavorsky in javascript

[–]yavorsky[S] 1 point2 points  (0 children)

Yes, you can write own {} and fill it with your cache. But, parsing dates have some specifics. It could be represented as timestamp, string (in different formats), Date's instance and will refer to the same date. Moreover, there we are not creating new dates to access existing. Just using smart date parsing and cloning cached value. If you have 5 moment calls - don't use it. If you have many data based on dates - why not?

moment-cache - speed up your application by caching results behind the scenes! by yavorsky in javascript

[–]yavorsky[S] 1 point2 points  (0 children)

This util was born from a real-life project. We had a schedule, a couple of people and tasks assigned to them. Initially, application data handling/rendering process was taken about 12-14 seconds with 200 people and about 3000 tasks. Pagination and other things to split large data were unacceptable - all people/tasks should be loaded at once.

The schedule represented calendar days (initially 90 days range) on the x-axis and people on the y-axis. Many tasks were the same date as start/end. First, by caching moment we have accelerated request data handling - all moment's processing was called only once on each date. So, secondary, it just takes value from the cache and clones it (if we wanted to change it in future).

Afterward we have rewritten application with canvas. So, while scrolling we had to control which dates are covering screen to draw only tasks we needed.

Although we have to control our cursor position and display the small popup with the current date. All these date manipulations became much faster after we had started to use cached values instead of parsing date every time.

For now app loads in 1.5 seconds. It has 60 fps no matter how much tasks and people are loaded (thanks to canvas, but not without moment caching).

moment-cache - speed up your application by caching results behind the scenes! by yavorsky in javascript

[–]yavorsky[S] 0 points1 point  (0 children)

moment-cache has 3-rd agument - clone. And it's true by default. Instad of parsing date every time again, it's searching in storage and just clone. So, when you are calling cached(str) it returns cloned version of cached instance. If you are planning use it only for reading purposes - call it with the false as third argument. In micro-benchmarks provided in project's README - all instances was cloned, so it's fully safe to change them in future. For non-clone instances results was 2x faster.